{
  "swagger": "2.0",
  "info": {
    "title": "gRPC for our DBaaS dataflow service",
    "description": "notably uses gRPC-Gateway with OpenAPI",
    "version": "0.1"
  },
  "tags": [
    {
      "name": "ImportService"
    },
    {
      "name": "ImportInnerService"
    },
    {
      "name": "BackupService"
    },
    {
      "name": "BackupInternalService"
    },
    {
      "name": "ServerlessBackupInternalService"
    },
    {
      "name": "ReplicationService"
    },
    {
      "name": "ConnectorService"
    },
    {
      "name": "DWReplicationService"
    },
    {
      "name": "DPFeatureService"
    },
    {
      "name": "OPSService"
    },
    {
      "name": "ChangefeedInstanceTypeService"
    },
    {
      "name": "DumplingService"
    },
    {
      "name": "OpsInternalService"
    }
  ],
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/api/v1/admin/orgs/{org_id}/clusters/{cluster_id}/tcu": {
      "get": {
        "operationId": "GetClusterTCUForAdmin",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowGetClusterTCUResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "query",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/changefeed/instance_types": {
      "get": {
        "operationId": "ListChangefeedInstanceTypes",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowChangefeedInstanceTypes"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "tags": [
          "ChangefeedInstanceTypeService"
        ]
      }
    },
    "/api/v1/dataflow/get-s3-bucket-region": {
      "get": {
        "operationId": "GetS3BucketRegion",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowGetS3BucketRegionResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "s3_url",
            "in": "query",
            "required": true,
            "type": "string"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/dataflow/imports/apply-table-filters": {
      "post": {
        "operationId": "ApplyTableFilters",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsApplyTableFiltersResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/dataflowImportsApplyTableFiltersReq"
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/dataflow/imports/data-type": {
      "get": {
        "operationId": "ListDataTypes",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsListDataTypesResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/dw_replication/target_schemas": {
      "post": {
        "operationId": "ListTargetDatabases",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWRTargetDatabases"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/dataflowDWRListTargetDatabasesReq"
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/dw_replication/target_warehouses": {
      "post": {
        "operationId": "ListTargetWarehouses",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWRTargetWarehouses"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/dataflowDWRListTargetWarehousesReq"
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/clusters/{cluster_id}/replications/{rep_id}/type/{detach_type}": {
      "delete": {
        "operationId": "DetachReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDetachReplicationResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "rep_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "detach_type",
            "in": "path",
            "required": true,
            "type": "string",
            "enum": [
              "Planned",
              "Force",
              "None"
            ]
          }
        ],
        "tags": [
          "ReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/cal_changefeed_fee": {
      "post": {
        "operationId": "CalChangefeedFee",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowCalChangefeedFeeResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "cloud_provider_name": {
                  "type": "string"
                },
                "region_name": {
                  "type": "string"
                },
                "duration": {
                  "type": "string",
                  "format": "int64"
                },
                "changefeed_instance_type": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/admin_profile": {
      "get": {
        "operationId": "ConnectorService_DescribeAdminProfile",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowAdminProfileResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups": {
      "get": {
        "operationId": "ListBackups",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowBackups"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "backup_id",
            "in": "query",
            "required": false,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "status",
            "description": " - BACKUP_STATUS_SKIPPED: Backup skipped due to cluster paused or schedule timeout\n - BACKUP_STATUS_TERMINIATED: User delete backups during backup",
            "in": "query",
            "required": false,
            "type": "string",
            "enum": [
              "BACKUP_STATUS_UNSPECIFIED",
              "BACKUP_STATUS_PENDING",
              "BACKUP_STATUS_RUNNING",
              "BACKUP_STATUS_FAILED",
              "BACKUP_STATUS_SUCCESS",
              "BACKUP_STATUS_SKIPPED",
              "BACKUP_STATUS_TERMINIATED"
            ],
            "default": "BACKUP_STATUS_UNSPECIFIED"
          },
          {
            "name": "region",
            "in": "query",
            "required": false,
            "type": "string"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/log-backups": {
      "get": {
        "operationId": "ListLogBackups",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowLogBackupListResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/options": {
      "get": {
        "operationId": "GetBackupOptions",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowBackupOptionsResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/pitr/ranges": {
      "get": {
        "operationId": "ListPiTRTimeRanges",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowPiTRTimeRangeListResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/restores/progress": {
      "get": {
        "operationId": "GetRestoreProgress",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowRestoreProgressResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/schedules": {
      "get": {
        "operationId": "GetAutoBackupSetting",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowAutoBackupSetting"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      },
      "post": {
        "operationId": "CreateBackupSchedule",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowCreateBackupScheduleResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "description": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "backup_type": {
                  "$ref": "#/definitions/dataflowBackupType"
                },
                "backup_time": {
                  "type": "string"
                },
                "backup_mode": {
                  "$ref": "#/definitions/dataflowBackupMode"
                },
                "retention_period": {
                  "type": "integer",
                  "format": "int64"
                }
              },
              "required": [
                "description",
                "name",
                "backup_type",
                "backup_time",
                "backup_mode"
              ]
            }
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_pitr_ranges": {
      "get": {
        "operationId": "ListServerlessPiTRTimeRanges",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowListServerlessPiTRTimeRangesResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_restores": {
      "get": {
        "summary": "Serverless dedicated APIs",
        "operationId": "ListServerlessRestores",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowListServerlessRestoresResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting": {
      "get": {
        "operationId": "GetBackupSetting",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowBackupSettingResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      },
      "post": {
        "operationId": "ModifyBackupSetting",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowBackupSettingResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "regions": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "description": {
                  "type": "string"
                },
                "pitr": {
                  "$ref": "#/definitions/dataflowPiTRSetting"
                },
                "switch_immediately": {
                  "type": "boolean"
                },
                "volume_backup": {
                  "$ref": "#/definitions/dataflowVolumeBackupSetting"
                },
                "backup_schedule": {
                  "$ref": "#/definitions/dataflowBackupScheduleSetting"
                }
              },
              "required": [
                "regions",
                "description"
              ]
            }
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}": {
      "delete": {
        "operationId": "DeleteBackup",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}/restore": {
      "post": {
        "operationId": "RestoreBackup",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowRestoreResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "id",
            "description": "it is backup id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "cluster_name": {
                  "type": "string"
                },
                "description": {
                  "type": "string"
                },
                "password": {
                  "type": "string"
                },
                "components": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "$ref": "#/definitions/dataflowSimpleClusterComponent"
                  }
                },
                "port": {
                  "type": "integer",
                  "format": "int32"
                },
                "restore_mode": {
                  "$ref": "#/definitions/dataflowRestoreMode"
                },
                "restored_ts": {
                  "type": "string",
                  "format": "int64"
                },
                "region": {
                  "type": "string"
                },
                "backup_region": {
                  "type": "string"
                }
              },
              "required": [
                "restore_mode"
              ]
            }
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/changefeeds/{changefeed_id}/scale": {
      "post": {
        "operationId": "ScaleChangefeed",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "changefeed_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "changefeed_instance_type": {
                  "type": "string"
                }
              },
              "required": [
                "changefeed_instance_type"
              ]
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors": {
      "get": {
        "operationId": "ListConnectors",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowConnectors"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "connector_type",
            "in": "query",
            "required": true,
            "type": "string",
            "enum": [
              "TOTAL",
              "KAFKA",
              "TIDB",
              "MYSQL",
              "SERVERLESS_TIDB",
              "S3",
              "GCS"
            ],
            "default": "TOTAL"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      },
      "post": {
        "operationId": "CreateConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowConnectorID"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "connector_type": {
                  "$ref": "#/definitions/dataflowConnectorType"
                },
                "kafka_info": {
                  "$ref": "#/definitions/dataflowKafkaInfo"
                },
                "mysql_info": {
                  "$ref": "#/definitions/dataflowMySQLInfo"
                },
                "s3_info": {
                  "$ref": "#/definitions/dataflowS3Info"
                },
                "gcs_info": {
                  "$ref": "#/definitions/dataflowGcsInfo"
                },
                "serverless_tidb_info": {
                  "$ref": "#/definitions/dataflowServerlessTidbInfo"
                },
                "url": {
                  "type": "string"
                },
                "topic": {
                  "type": "string"
                },
                "user": {
                  "type": "string"
                },
                "password": {
                  "type": "string"
                },
                "start_tso": {
                  "type": "string",
                  "format": "uint64"
                },
                "ignore_replication": {
                  "type": "boolean"
                },
                "changefeed_instance_type": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "internal": {
                  "type": "boolean"
                }
              },
              "required": [
                "connector_type",
                "url"
              ]
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/edit": {
      "post": {
        "operationId": "EditConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "connector_id": {
                  "type": "string",
                  "format": "uint64"
                },
                "connector_type": {
                  "$ref": "#/definitions/dataflowConnectorType"
                },
                "kafka_info": {
                  "$ref": "#/definitions/dataflowKafkaInfo"
                },
                "mysql_info": {
                  "$ref": "#/definitions/dataflowMySQLInfo"
                },
                "serverless_tidb_info": {
                  "$ref": "#/definitions/dataflowServerlessTidbInfo"
                },
                "s3_info": {
                  "$ref": "#/definitions/dataflowS3Info"
                },
                "gcs_info": {
                  "$ref": "#/definitions/dataflowGcsInfo"
                },
                "name": {
                  "type": "string"
                }
              },
              "required": [
                "connector_type",
                "connector_id"
              ]
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/test": {
      "post": {
        "operationId": "TestConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "connector_type": {
                  "$ref": "#/definitions/dataflowConnectorType"
                },
                "kafka_info": {
                  "$ref": "#/definitions/dataflowKafkaInfo"
                },
                "mysql_info": {
                  "$ref": "#/definitions/dataflowMySQLInfo"
                },
                "s3_info": {
                  "$ref": "#/definitions/dataflowS3Info"
                },
                "gcs_info": {
                  "$ref": "#/definitions/dataflowGcsInfo"
                },
                "serverless_tidb_info": {
                  "$ref": "#/definitions/dataflowServerlessTidbInfo"
                },
                "url": {
                  "type": "string"
                },
                "topic": {
                  "type": "string"
                },
                "user": {
                  "type": "string"
                },
                "password": {
                  "type": "string"
                },
                "start_tso": {
                  "type": "string",
                  "format": "uint64"
                },
                "ignore_replication": {
                  "type": "boolean"
                },
                "changefeed_instance_type": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "internal": {
                  "type": "boolean"
                }
              },
              "required": [
                "connector_type",
                "url"
              ]
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}": {
      "get": {
        "operationId": "GetConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowConnector"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "connector_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      },
      "delete": {
        "operationId": "DeleteConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "connector_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/start": {
      "post": {
        "operationId": "StartConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "connector_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object"
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/stop": {
      "post": {
        "operationId": "StopConnector",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "connector_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object"
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/data-ingestion-profile": {
      "get": {
        "operationId": "ImportService_GetDataIngestionProfile",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDataIngestionProfile"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/describeSchemaTable": {
      "post": {
        "operationId": "DescribeSchemaTable",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDescribeSchemaTableResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "filter_rule": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dumpling": {
      "post": {
        "operationId": "CreateDumplingTask",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDumplingTaskID"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "dumpling_config": {
                  "$ref": "#/definitions/dataflowDumplingConfig"
                },
                "name": {
                  "type": "string"
                },
                "object_store": {
                  "$ref": "#/definitions/dataflowDumplingObjectStore"
                },
                "creator": {
                  "type": "string"
                }
              },
              "required": [
                "dumpling_config"
              ]
            }
          }
        ],
        "tags": [
          "DumplingService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dumpling/{dumpling_id}": {
      "get": {
        "operationId": "GetDumplingTask",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDumplingTask"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dumpling_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DumplingService"
        ]
      },
      "delete": {
        "operationId": "CancelDumplingTask",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dumpling_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DumplingService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication": {
      "get": {
        "operationId": "ListDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWReplications"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "page_idx",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": true,
            "type": "integer",
            "format": "int64"
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      },
      "post": {
        "operationId": "CreateDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWReplicationID"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "dw_connection": {
                  "$ref": "#/definitions/dataflowDWRConnection"
                },
                "object_store": {
                  "$ref": "#/definitions/dataflowDWRObjectStore"
                },
                "db_username": {
                  "type": "string"
                },
                "db_password": {
                  "type": "string"
                },
                "flush_interval_secs": {
                  "type": "string",
                  "format": "uint64"
                },
                "tables": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "dw_connection",
                "object_store",
                "db_username",
                "db_password"
              ]
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/source_tables": {
      "get": {
        "operationId": "ListSourceTables",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWRListSourceTablesResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/test": {
      "post": {
        "operationId": "TestDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowTestDWReplicationResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "dw_connection": {
                  "$ref": "#/definitions/dataflowDWRConnection"
                },
                "object_store": {
                  "$ref": "#/definitions/dataflowDWRObjectStore"
                },
                "db_username": {
                  "type": "string"
                },
                "db_password": {
                  "type": "string"
                },
                "flush_interval_secs": {
                  "type": "string",
                  "format": "uint64"
                },
                "tables": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "dw_connection",
                "object_store",
                "db_username",
                "db_password"
              ]
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}": {
      "get": {
        "operationId": "GetDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowDWReplication"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      },
      "delete": {
        "operationId": "DeleteDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/edit": {
      "post": {
        "operationId": "EditDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/pause": {
      "post": {
        "operationId": "PauseDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object"
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/resume": {
      "post": {
        "operationId": "ResumeDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object"
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/terminate": {
      "post": {
        "operationId": "TerminateDWReplication",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "dw_replication_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object"
            }
          }
        ],
        "tags": [
          "DWReplicationService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/enabled_dp_features": {
      "get": {
        "operationId": "GetEnabledDPFeaturesForCluster",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowEnabledDPFeaturesForClusterResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "DPFeatureService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/import-target-tables": {
      "get": {
        "operationId": "GetClusterTables",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsGetClusterTablesResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports": {
      "get": {
        "operationId": "ListImports",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowListImportResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "statuses",
            "in": "query",
            "required": false,
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "UNKNOWN",
                "PREPARING",
                "IMPORTING",
                "COMPLETED",
                "FAILED",
                "CANCELING",
                "CANCELED"
              ]
            },
            "collectionFormat": "multi"
          },
          {
            "name": "page",
            "description": "start from 1",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "page_size",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int32"
          },
          {
            "name": "created_by_dm",
            "in": "query",
            "required": false,
            "type": "boolean"
          }
        ],
        "tags": [
          "ImportService"
        ]
      },
      "put": {
        "operationId": "CreateImport",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowClusterImportId"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "source_url": {
                  "type": "string",
                  "title": "import info"
                },
                "region": {
                  "type": "string"
                },
                "data_format": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: sql statement(dumpling default format\n2: aurora snapshot(parquet)\n3: custom csv\n4: parquet format(not aurora)"
                },
                "data_source_type": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: aws s3\n2: GCS"
                },
                "target_username": {
                  "type": "string",
                  "description": "deprecated, use internal user instead"
                },
                "target_password": {
                  "type": "string",
                  "description": "deprecated, use internal password instead"
                },
                "filter": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "csv_format": {
                  "$ref": "#/definitions/dataflowCustomCSVFormat"
                },
                "aws_role_arn": {
                  "type": "string"
                },
                "object_name_pattern": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "target_table_pattern": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "local_import_cfg": {
                  "$ref": "#/definitions/dataflowLocalImportCfg"
                },
                "name": {
                  "type": "string"
                },
                "dup_handling_for_sql": {
                  "$ref": "#/definitions/dataflowDupHandlingForSql"
                },
                "aws_access_key_id": {
                  "type": "string"
                },
                "aws_secret_access_key": {
                  "type": "string"
                },
                "target_table_infos": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "$ref": "#/definitions/dataflowImportTargetTableInfo"
                  }
                },
                "need_drop_tables": {
                  "type": "boolean",
                  "title": "need_drop_tables is only used in tutorial"
                }
              },
              "required": [
                "region",
                "data_format",
                "data_source_type"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/local/table-columns": {
      "get": {
        "operationId": "GetTableColumns",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsGetTableColumnsResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "db",
            "in": "query",
            "required": true,
            "type": "string"
          },
          {
            "name": "table",
            "in": "query",
            "required": true,
            "type": "string"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview": {
      "post": {
        "operationId": "Preview",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsPreviewResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "import_create_req": {
                  "$ref": "#/definitions/dataflowImportCreateReq",
                  "title": "Use ImportCreateReq as the common request temporarily.\nIn ImportsPreviewReq, below is requied:\n1. id\n2. source_url\n3. region\n4. data_format\n5. data_source_type\n7. csv_format (can be empty)\n8. aws_role_arn"
                }
              },
              "required": [
                "import_create_req"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-csv-file": {
      "post": {
        "operationId": "PreviewCsvFile",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsPreviewCsvFileResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "target_table": {
                  "$ref": "#/definitions/commonTable"
                },
                "source_uri": {
                  "type": "string"
                },
                "csv_format": {
                  "$ref": "#/definitions/dataflowCustomCSVFormat"
                },
                "first_n": {
                  "type": "string",
                  "format": "uint64"
                },
                "aws_role_arn": {
                  "type": "string"
                },
                "aws_access_key_id": {
                  "type": "string"
                },
                "aws_secret_access_key": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-local": {
      "post": {
        "operationId": "PreviewLocal",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsPreviewLocalResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "file_name": {
                  "type": "string"
                },
                "data_format": {
                  "$ref": "#/definitions/dataflowImportDataFormat"
                },
                "region": {
                  "type": "string"
                },
                "csv_format": {
                  "$ref": "#/definitions/dataflowCustomCSVFormat"
                },
                "n": {
                  "type": "string",
                  "format": "uint64"
                }
              },
              "required": [
                "file_name",
                "data_format",
                "region"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/schemas-meta": {
      "post": {
        "operationId": "GetSchemasMeta",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsGetSchemasMetaResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "import_create_req": {
                  "$ref": "#/definitions/dataflowImportCreateReq",
                  "title": "Use ImportCreateReq as the common request temporarily.\nIn ImportsGetSchemasMetaReq, below is requied:\n1. id\n2. source_url\n3. region\n4. data_format\n5. data_source_type\n6. aws_role_arn"
                }
              },
              "required": [
                "import_create_req"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/search-import-files": {
      "post": {
        "operationId": "SearchImportFiles",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsSearchImportFilesResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "target_table_infos": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "$ref": "#/definitions/dataflowImportTargetTableInfo"
                  }
                },
                "source_uri": {
                  "type": "string"
                },
                "data_format": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: sql statement(dumpling default format\n2: aurora snapshot(parquet)\n3: custom csv\n4: parquet format(not aurora)"
                },
                "data_source_type": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: aws s3\n2: GCS"
                },
                "aws_role_arn": {
                  "type": "string"
                },
                "aws_access_key_id": {
                  "type": "string"
                },
                "aws_secret_access_key": {
                  "type": "string"
                }
              },
              "required": [
                "target_table_infos",
                "source_uri",
                "data_format",
                "data_source_type"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/upload": {
      "post": {
        "operationId": "GenerateUploadUrl",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportsGenerateUploadUrlResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "region": {
                  "type": "string"
                },
                "file_name": {
                  "type": "string"
                },
                "content_length": {
                  "type": "string",
                  "format": "int64"
                }
              },
              "required": [
                "file_name",
                "content_length"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate": {
      "post": {
        "operationId": "ValidateImport",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "source_url": {
                  "type": "string",
                  "title": "import info"
                },
                "region": {
                  "type": "string"
                },
                "data_source_type": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: aws s3\n2: GCS"
                },
                "target_username": {
                  "type": "string",
                  "description": "deprecated, use internal user instead"
                },
                "target_password": {
                  "type": "string",
                  "description": "deprecated, use internal password instead"
                },
                "aws_role_arn": {
                  "type": "string"
                },
                "db_tbl_filter": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "obj_name_pattern": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "target_tbl_name": {
                  "type": "string",
                  "description": "deprecated, use target_table_infos instead"
                },
                "data_format": {
                  "type": "integer",
                  "format": "int64",
                  "title": "1: sql statement(dumpling default format)\n2: aurora snapshot(parquet)\n3: custom csv\n4: parquet format(not aurora)"
                },
                "csv_format": {
                  "$ref": "#/definitions/dataflowCustomCSVFormat"
                },
                "check_items": {
                  "type": "array",
                  "items": {
                    "$ref": "#/definitions/dataflowImportValidationItem"
                  }
                },
                "aws_access_key_id": {
                  "type": "string"
                },
                "aws_secret_access_key": {
                  "type": "string"
                },
                "target_table_infos": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "$ref": "#/definitions/dataflowImportTargetTableInfo"
                  }
                }
              },
              "required": [
                "source_url",
                "region",
                "data_source_type",
                "data_format"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate-target-table-empty": {
      "post": {
        "operationId": "ValidateTargetTableEmpty",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "object",
              "properties": {
                "target_table": {
                  "$ref": "#/definitions/commonTable"
                }
              },
              "required": [
                "target_table"
              ]
            }
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}": {
      "get": {
        "operationId": "GetImport",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowImportGetResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/cancel": {
      "post": {
        "summary": "Cancel the import and mark the status as 'canceled' status.",
        "operationId": "CancelImport",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/exit": {
      "post": {
        "summary": "Exit make the cluster exit the importing status\nBy design, when the cluster in the importing status, will display the\nimporting information and can not see the metrics than display at normal\nstatus and some operation like scale is also forbidden. After the import\nfinish, the cluster will still keep on importing status for user to check\nthe result, the user must click the 'Exit' button to exit the importing\nstatus explicitly. only finished status(success, failed, canceled) of a\nimport can exit the importing status.",
        "operationId": "ExitImport",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ImportService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tcu": {
      "get": {
        "operationId": "GetClusterTCU",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowGetClusterTCUResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "ConnectorService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/recycle-bin": {
      "get": {
        "operationId": "ListRecycleBinClusters",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/dataflowListRecycleBinClustersResp"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int64"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "type": "integer",
            "format": "int64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/api/v1/orgs/{org_id}/projects/{project_id}/recycle-bin/{cluster_id}/backups": {
      "delete": {
        "operationId": "DeleteDeletedClusterAndBackups",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "parameters": [
          {
            "name": "org_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "project_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          },
          {
            "name": "cluster_id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uint64"
          }
        ],
        "tags": [
          "BackupService"
        ]
      }
    },
    "/debug-api/event-bus/consumer-DLQ": {
      "post": {
        "operationId": "ConsumerEventBusDLQ",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "type": "object",
              "properties": {}
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/googlerpcStatus"
            }
          }
        },
        "tags": [
          "OPSService"
        ]
      }
    }
  },
  "definitions": {
    "BackupExternalStatus": {
      "type": "string",
      "enum": [
        "UNKNOWN",
        "RUNNING",
        "SUCCESS",
        "FAILED",
        "PENDING"
      ],
      "default": "UNKNOWN"
    },
    "BackupOptionsRespDualRegionOptions": {
      "type": "object",
      "properties": {
        "region_options": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/BackupOptionsRespRegionOptions"
          }
        },
        "cluster_region": {
          "$ref": "#/definitions/dataflowRegionInfo"
        }
      }
    },
    "BackupOptionsRespRegionOptions": {
      "type": "object",
      "properties": {
        "region": {
          "$ref": "#/definitions/dataflowRegionInfo"
        },
        "continent": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      }
    },
    "ListReplicationsReqFilter": {
      "type": "object",
      "properties": {
        "org_id": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          }
        },
        "project_id": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          }
        },
        "primary_cluster_ids": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          }
        },
        "secondary_cluster_ids": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uint64"
          }
        },
        "exclude_statuses": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ListReplicationsReqReplicationStatus"
          }
        }
      }
    },
    "ListReplicationsReqReplicationStatus": {
      "type": "string",
      "enum": [
        "Unknown",
        "Creating",
        "Replicating",
        "Detaching",
        "Detached",
        "Failed",
        "Paused"
      ],
      "default": "Unknown"
    },
    "ListReplicationsRespReplicationProgress": {
      "type": "string",
      "enum": [
        "Unknown",
        "Backuping",
        "Restoring",
        "ReplicationPreparing"
      ],
      "default": "Unknown"
    },
    "agentImportsSchemaMeta": {
      "type": "object",
      "properties": {
        "create_file": {
          "type": "string"
        },
        "max_data_file_size": {
          "type": "string",
          "format": "uint64"
        },
        "tables_meta": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/agentImportsTableMeta"
          },
          "title": "map: \u003ctable id, table meta\u003e"
        },
        "create_file_size": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "agentImportsTableMeta": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "create_file": {
          "type": "string"
        },
        "data_file_num": {
          "type": "string",
          "format": "uint64"
        },
        "data_file_size": {
          "type": "string",
          "format": "uint64"
        },
        "first_data_file": {
          "type": "string"
        },
        "max_data_file_size": {
          "type": "string",
          "format": "uint64"
        },
        "create_file_size": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "agentRow": {
      "type": "object",
      "properties": {
        "column_values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "agentSchema": {
      "type": "object",
      "properties": {
        "schema_name": {
          "type": "string"
        },
        "tables": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/agentTable"
          }
        }
      }
    },
    "agentTable": {
      "type": "object",
      "properties": {
        "schema_name": {
          "type": "string"
        },
        "table_name": {
          "type": "string"
        },
        "row_headers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "row_values": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/agentRow"
          }
        },
        "row_data_types": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "column_is_pk": {
          "type": "array",
          "items": {
            "type": "boolean"
          }
        },
        "column_auto_gen": {
          "type": "array",
          "items": {
            "type": "boolean"
          },
          "title": "column_auto_gen represents column is auto_increment or auto_random"
        }
      }
    },
    "baseBaseReq": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "title": "such as: request_id, trace_id"
        }
      }
    },
    "baseBaseResp": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "title": "such as: request_id, trace_id"
        },
        "err_code": {
          "type": "string",
          "format": "int64"
        },
        "err_msg": {
          "type": "string"
        }
      }
    },
    "basePager": {
      "type": "object",
      "properties": {
        "page": {
          "type": "string",
          "format": "int64",
          "title": "start from 1"
        },
        "page_size": {
          "type": "string",
          "format": "int64"
        }
      }
    },
    "commonTable": {
      "type": "object",
      "properties": {
        "schema": {
          "type": "string"
        },
        "table": {
          "type": "string"
        }
      }
    },
    "dataflowAdminProfileResp": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        },
        "aws_external_id": {
          "type": "string"
        },
        "aws_account_id": {
          "type": "string"
        },
        "gcp_account_id": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "aws_external_id",
        "aws_account_id",
        "gcp_account_id"
      ]
    },
    "dataflowApplyConfigChangesResp": {
      "type": "object"
    },
    "dataflowAuthentication": {
      "type": "object",
      "properties": {
        "auth_type": {
          "$ref": "#/definitions/dataflowKafkaAuthType"
        },
        "userName": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      }
    },
    "dataflowAutoBackupSetting": {
      "type": "object",
      "properties": {
        "backup_mode": {
          "$ref": "#/definitions/dataflowBackupMode"
        },
        "backup_time": {
          "type": "string"
        },
        "max_backups": {
          "type": "string",
          "format": "uint64"
        },
        "retention_period": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "backup_mode",
        "backup_time"
      ]
    },
    "dataflowBackup": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster": {
          "$ref": "#/definitions/dataflowBackupCluster"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "size": {
          "type": "string",
          "format": "uint64"
        },
        "status": {
          "$ref": "#/definitions/BackupExternalStatus"
        },
        "type": {
          "$ref": "#/definitions/dataflowBackupType"
        },
        "expiration_time": {
          "type": "string",
          "format": "date-time"
        },
        "backup_ts": {
          "type": "string",
          "format": "date-time"
        },
        "is_volume_backup": {
          "type": "boolean"
        },
        "backup_tso": {
          "type": "string",
          "format": "uint64"
        },
        "regions": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowRegionInfo"
          }
        }
      },
      "required": [
        "id",
        "cluster",
        "name",
        "description",
        "created_at",
        "size",
        "status",
        "type",
        "expiration_time"
      ]
    },
    "dataflowBackupCluster": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_components": {
          "$ref": "#/definitions/dataflowClusterComponents"
        }
      },
      "required": [
        "cluster_id",
        "cluster_components"
      ]
    },
    "dataflowBackupCycle": {
      "type": "string",
      "enum": [
        "DAILY",
        "WEEKLY"
      ],
      "default": "DAILY"
    },
    "dataflowBackupMode": {
      "type": "string",
      "enum": [
        "FULL"
      ],
      "default": "FULL"
    },
    "dataflowBackupOptionsResp": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "dual_region_options": {
          "$ref": "#/definitions/BackupOptionsRespDualRegionOptions"
        }
      },
      "required": [
        "cluster_id",
        "dual_region_options"
      ]
    },
    "dataflowBackupScheduleSetting": {
      "type": "object",
      "properties": {
        "disable": {
          "type": "boolean",
          "title": "whether pause scheduling auto backup"
        },
        "backup_time": {
          "type": "string"
        },
        "retention_period": {
          "type": "integer",
          "format": "int64"
        },
        "backup_cycle": {
          "$ref": "#/definitions/dataflowBackupCycle"
        },
        "weekdays": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/dataflowWeekDay"
          }
        },
        "next_backup_time": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "dataflowBackupSettingResp": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "provider": {
          "type": "string"
        },
        "regions": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowRegionInfo"
          }
        },
        "description": {
          "type": "string"
        },
        "pitr": {
          "$ref": "#/definitions/dataflowPiTRSetting"
        },
        "volume_backup": {
          "$ref": "#/definitions/dataflowVolumeBackupSetting"
        },
        "backup_schedule": {
          "$ref": "#/definitions/dataflowBackupScheduleSetting"
        },
        "restore_regions": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowRegionInfo"
          }
        },
        "status": {
          "$ref": "#/definitions/dataflowBackupSettingStatus"
        }
      },
      "required": [
        "cluster_id",
        "provider",
        "regions",
        "description"
      ]
    },
    "dataflowBackupSettingStatus": {
      "type": "string",
      "enum": [
        "Creating",
        "Editing_Region",
        "Editing_PiTR",
        "Normal",
        "Deleted",
        "Waiting_For_Editing_PiTR"
      ],
      "default": "Creating"
    },
    "dataflowBackupStatus": {
      "type": "string",
      "enum": [
        "BACKUP_STATUS_UNSPECIFIED",
        "BACKUP_STATUS_PENDING",
        "BACKUP_STATUS_RUNNING",
        "BACKUP_STATUS_FAILED",
        "BACKUP_STATUS_SUCCESS",
        "BACKUP_STATUS_SKIPPED",
        "BACKUP_STATUS_TERMINIATED"
      ],
      "default": "BACKUP_STATUS_UNSPECIFIED",
      "title": "- BACKUP_STATUS_SKIPPED: Backup skipped due to cluster paused or schedule timeout\n - BACKUP_STATUS_TERMINIATED: User delete backups during backup"
    },
    "dataflowBackupType": {
      "type": "string",
      "enum": [
        "AUTO",
        "MANUAL",
        "ALL"
      ],
      "default": "AUTO"
    },
    "dataflowBackups": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowBackup"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "items",
        "total"
      ]
    },
    "dataflowBigintUnsignedHandlingMode": {
      "type": "string",
      "enum": [
        "BIGINT_UNSIGNED_HANDLING_MODE_LONG",
        "BIGINT_UNSIGNED_HANDLING_MODE_STRING"
      ],
      "default": "BIGINT_UNSIGNED_HANDLING_MODE_LONG"
    },
    "dataflowBinaryEncodingMethod": {
      "type": "string",
      "enum": [
        "BASE64",
        "HEX"
      ],
      "default": "BASE64"
    },
    "dataflowBroker": {
      "type": "object",
      "properties": {
        "kafka_version": {
          "$ref": "#/definitions/dataflowKafkaVersion"
        },
        "broker_endpoints": {
          "type": "string"
        },
        "tls_enable": {
          "type": "boolean"
        },
        "compression": {
          "$ref": "#/definitions/dataflowCompressionType"
        }
      }
    },
    "dataflowCalChangefeedFeeResp": {
      "type": "object",
      "properties": {
        "raw_fee": {
          "type": "number",
          "format": "double"
        },
        "fee": {
          "type": "number",
          "format": "double"
        }
      }
    },
    "dataflowChangefeedInstanceType": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "rcu_num": {
          "type": "integer",
          "format": "int64"
        },
        "replicas": {
          "type": "integer",
          "format": "int64"
        },
        "rps_limit": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowChangefeedInstanceTypes": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowChangefeedInstanceType"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "items",
        "total"
      ]
    },
    "dataflowClusterComponent": {
      "type": "object",
      "properties": {
        "replicas": {
          "type": "integer",
          "format": "int64"
        },
        "node_profile": {
          "$ref": "#/definitions/dataflowNodeProfile"
        }
      },
      "required": [
        "replicas",
        "node_profile"
      ]
    },
    "dataflowClusterComponents": {
      "type": "object",
      "properties": {
        "tikv": {
          "$ref": "#/definitions/dataflowClusterComponent"
        },
        "tidb": {
          "$ref": "#/definitions/dataflowClusterComponent"
        },
        "tiflash": {
          "$ref": "#/definitions/dataflowClusterComponent"
        }
      },
      "required": [
        "tikv",
        "tidb",
        "tiflash"
      ]
    },
    "dataflowClusterImportId": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "cluster_id",
        "id",
        "org_id",
        "project_id"
      ]
    },
    "dataflowClusterInfoOfRestore": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "name": {
          "type": "string"
        },
        "status": {
          "type": "string"
        }
      }
    },
    "dataflowColumnInfo": {
      "type": "object",
      "properties": {
        "column_name": {
          "type": "string"
        },
        "column_type": {
          "type": "string"
        }
      }
    },
    "dataflowComponentType": {
      "type": "string",
      "enum": [
        "COMPONENT_TYPE_UNSPECIFIED",
        "COMPONENT_TYPE_TIDB",
        "COMPONENT_TYPE_TIKV",
        "COMPONENT_TYPE_TIFLASH",
        "COMPONENT_TYPE_PD",
        "COMPONENT_TYPE_TICDC"
      ],
      "default": "COMPONENT_TYPE_UNSPECIFIED"
    },
    "dataflowCompressionType": {
      "type": "string",
      "enum": [
        "NONE",
        "GZIP",
        "SNAPPY",
        "LZ4",
        "ZSTD"
      ],
      "default": "NONE"
    },
    "dataflowCompute": {
      "type": "object",
      "properties": {
        "cpu": {
          "type": "number",
          "format": "float"
        },
        "memory_mi": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "cpu",
        "memory_mi"
      ]
    },
    "dataflowConfigClusterType": {
      "type": "string",
      "enum": [
        "CONFIG_CLUSTER_TYPE_UNSPECIFIED",
        "TIDB_DEDICATED_CLUSTER",
        "TICDC_CLUSTER",
        "CHANGEFEED_CLUSTER"
      ],
      "default": "CONFIG_CLUSTER_TYPE_UNSPECIFIED"
    },
    "dataflowConfigFileType": {
      "type": "string",
      "enum": [
        "CONFIG_FILE_TYPE_UNSPECIFIED",
        "BACKUP_FILE",
        "RESTORE_FILE",
        "TICDC_FILE",
        "CHANGEFEED_FILE",
        "SINK_URI"
      ],
      "default": "CONFIG_FILE_TYPE_UNSPECIFIED"
    },
    "dataflowConnection": {
      "type": "object",
      "properties": {
        "endpoint": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      }
    },
    "dataflowConnector": {
      "type": "object",
      "properties": {
        "connector_id": {
          "type": "string",
          "format": "uint64"
        },
        "connector_type": {
          "$ref": "#/definitions/dataflowConnectorType"
        },
        "url": {
          "type": "string"
        },
        "topic": {
          "type": "string"
        },
        "user": {
          "type": "string"
        },
        "status": {
          "$ref": "#/definitions/dataflowConnectorStatus"
        },
        "checkpoint_tso": {
          "type": "string",
          "format": "uint64"
        },
        "checkpoint_utc": {
          "type": "string",
          "format": "date-time"
        },
        "error": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "request": {
          "$ref": "#/definitions/dataflowConnectorCreateReq"
        },
        "changefeed_instance_type": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "connector_id",
        "connector_type",
        "url",
        "status"
      ]
    },
    "dataflowConnectorCreateReq": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "connector_type": {
          "$ref": "#/definitions/dataflowConnectorType"
        },
        "kafka_info": {
          "$ref": "#/definitions/dataflowKafkaInfo"
        },
        "mysql_info": {
          "$ref": "#/definitions/dataflowMySQLInfo"
        },
        "s3_info": {
          "$ref": "#/definitions/dataflowS3Info"
        },
        "gcs_info": {
          "$ref": "#/definitions/dataflowGcsInfo"
        },
        "serverless_tidb_info": {
          "$ref": "#/definitions/dataflowServerlessTidbInfo"
        },
        "url": {
          "type": "string"
        },
        "topic": {
          "type": "string"
        },
        "user": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "start_tso": {
          "type": "string",
          "format": "uint64"
        },
        "ignore_replication": {
          "type": "boolean"
        },
        "changefeed_instance_type": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "internal": {
          "type": "boolean"
        }
      },
      "required": [
        "cluster_id",
        "org_id",
        "connector_type",
        "project_id",
        "url"
      ]
    },
    "dataflowConnectorID": {
      "type": "object",
      "properties": {
        "connector_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "connector_id",
        "cluster_id",
        "org_id",
        "project_id"
      ]
    },
    "dataflowConnectorStatus": {
      "type": "string",
      "enum": [
        "RUNNING",
        "FAILED",
        "ERROR",
        "CREATING",
        "RESUMING",
        "PAUSING",
        "PAUSED",
        "DELETING",
        "DELETED",
        "EDITING",
        "WARNING",
        "SCALING"
      ],
      "default": "RUNNING"
    },
    "dataflowConnectorType": {
      "type": "string",
      "enum": [
        "TOTAL",
        "KAFKA",
        "TIDB",
        "MYSQL",
        "SERVERLESS_TIDB",
        "S3",
        "GCS"
      ],
      "default": "TOTAL"
    },
    "dataflowConnectors": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowConnector"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "items",
        "total"
      ]
    },
    "dataflowCreateBackupScheduleResp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "backup_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "id"
      ]
    },
    "dataflowCreateDWReplicationReq": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "name": {
          "type": "string"
        },
        "dw_connection": {
          "$ref": "#/definitions/dataflowDWRConnection"
        },
        "object_store": {
          "$ref": "#/definitions/dataflowDWRObjectStore"
        },
        "db_username": {
          "type": "string"
        },
        "db_password": {
          "type": "string"
        },
        "flush_interval_secs": {
          "type": "string",
          "format": "uint64"
        },
        "tables": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "cluster_id",
        "project_id",
        "org_id",
        "dw_connection",
        "object_store",
        "db_username",
        "db_password"
      ]
    },
    "dataflowCreateDumplingTaskReq": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "dumpling_config": {
          "$ref": "#/definitions/dataflowDumplingConfig"
        },
        "name": {
          "type": "string"
        },
        "object_store": {
          "$ref": "#/definitions/dataflowDumplingObjectStore"
        },
        "creator": {
          "type": "string"
        }
      },
      "required": [
        "cluster_id",
        "org_id",
        "project_id",
        "dumpling_config"
      ]
    },
    "dataflowCreateFinalBackupResp": {
      "type": "object",
      "properties": {
        "backup_id": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "dataflowCreateReplicationResp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "base_resp": {
          "$ref": "#/definitions/baseBaseResp"
        }
      }
    },
    "dataflowCurrentTable": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "size": {
          "type": "string",
          "format": "uint64"
        },
        "completed_percent": {
          "type": "integer",
          "format": "int64",
          "title": "1~100"
        }
      },
      "required": [
        "name",
        "size",
        "completed_percent"
      ]
    },
    "dataflowCustomCSVFormat": {
      "type": "object",
      "properties": {
        "separator": {
          "type": "string"
        },
        "delimiter": {
          "type": "string"
        },
        "header": {
          "type": "boolean"
        },
        "not_null": {
          "type": "boolean"
        },
        "null": {
          "type": "string"
        },
        "backslash_escape": {
          "type": "boolean"
        },
        "trim_last_separator": {
          "type": "boolean"
        },
        "header_schema_match": {
          "type": "boolean"
        }
      }
    },
    "dataflowDWRConnection": {
      "type": "object",
      "properties": {
        "kind": {
          "$ref": "#/definitions/dataflowDWRConnectionKind"
        },
        "snowflake": {
          "$ref": "#/definitions/dataflowDWRConnectionSnowflake",
          "description": "Note: We are not using oneof, because the generated go code does not support\nchecking the variant type."
        },
        "redshift": {
          "$ref": "#/definitions/dataflowDWRConnectionRedshift"
        },
        "bigquery": {
          "$ref": "#/definitions/dataflowDWRConnectionBigQuery"
        }
      },
      "required": [
        "kind"
      ]
    },
    "dataflowDWRConnectionBigQuery": {
      "type": "object",
      "properties": {
        "project_id": {
          "type": "string"
        },
        "dataset_id": {
          "type": "string"
        }
      },
      "required": [
        "project_id",
        "dataset_id"
      ]
    },
    "dataflowDWRConnectionKind": {
      "type": "string",
      "enum": [
        "Snowflake",
        "Redshift",
        "BigQuery"
      ],
      "default": "Snowflake"
    },
    "dataflowDWRConnectionRedshift": {
      "type": "object",
      "properties": {
        "host": {
          "type": "string"
        },
        "port": {
          "type": "integer",
          "format": "int64"
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "database": {
          "type": "string"
        },
        "schema": {
          "type": "string"
        }
      },
      "required": [
        "host",
        "port",
        "username",
        "password",
        "database"
      ]
    },
    "dataflowDWRConnectionSnowflake": {
      "type": "object",
      "properties": {
        "account_id": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "database": {
          "type": "string"
        },
        "schema": {
          "type": "string"
        },
        "warehouse": {
          "type": "string"
        }
      },
      "required": [
        "account_id",
        "username",
        "password"
      ]
    },
    "dataflowDWRListSourceTablesResp": {
      "type": "object",
      "properties": {
        "databases": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowDWRSourceDatabase"
          }
        }
      }
    },
    "dataflowDWRListTargetDatabasesReq": {
      "type": "object",
      "properties": {
        "kind": {
          "$ref": "#/definitions/dataflowDWRListTargetDatabasesReqKind"
        },
        "account_id": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      },
      "required": [
        "account_id",
        "username",
        "password"
      ]
    },
    "dataflowDWRListTargetDatabasesReqKind": {
      "type": "string",
      "enum": [
        "Snowflake",
        "Redshift"
      ],
      "default": "Snowflake"
    },
    "dataflowDWRListTargetWarehousesReq": {
      "type": "object",
      "properties": {
        "account_id": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      },
      "required": [
        "account_id",
        "username",
        "password"
      ]
    },
    "dataflowDWRObjectStore": {
      "type": "object",
      "properties": {
        "kind": {
          "$ref": "#/definitions/dataflowDWRObjectStoreKind"
        },
        "s3": {
          "$ref": "#/definitions/dataflowObjectStoreS3",
          "description": "Note: We are not using oneof, because the generated go code does not support\nchecking the variant type."
        },
        "gcs": {
          "$ref": "#/definitions/dataflowObjectStoreGCS"
        }
      },
      "required": [
        "kind"
      ]
    },
    "dataflowDWRObjectStoreKind": {
      "type": "string",
      "enum": [
        "S3",
        "GCS"
      ],
      "default": "S3"
    },
    "dataflowDWRSourceDatabase": {
      "type": "object",
      "properties": {
        "database": {
          "type": "string"
        },
        "tables": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "database"
      ]
    },
    "dataflowDWRTableTask": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "table_name": {
          "type": "string"
        },
        "stage": {
          "$ref": "#/definitions/dataflowDWRTableTaskStage"
        },
        "status": {
          "$ref": "#/definitions/dataflowDWRTableTaskStatus"
        },
        "error_message": {
          "type": "string"
        }
      }
    },
    "dataflowDWRTableTaskStage": {
      "type": "string",
      "enum": [
        "CREATING",
        "PREPARING_SNAPSHOT",
        "LOADING_SNAPSHOT",
        "LOADING_INCREMENTAL",
        "FINISHED"
      ],
      "default": "CREATING",
      "title": "- CREATING: Unused for now"
    },
    "dataflowDWRTableTaskStatus": {
      "type": "string",
      "enum": [
        "STATUS_NORMAL",
        "STATUS_FATAL_ERROR",
        "STATUS_FINISHED"
      ],
      "default": "STATUS_NORMAL"
    },
    "dataflowDWRTargetDatabase": {
      "type": "object",
      "properties": {
        "database": {
          "type": "string"
        },
        "schemas": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "schemas_cnt": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "database"
      ]
    },
    "dataflowDWRTargetDatabases": {
      "type": "object",
      "properties": {
        "databases": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowDWRTargetDatabase"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowDWRTargetWarehouses": {
      "type": "object",
      "properties": {
        "warehouses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowDWReplication": {
      "type": "object",
      "properties": {
        "dw_replication_id": {
          "type": "string",
          "format": "uint64"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "status": {
          "$ref": "#/definitions/dataflowDWReplicationStatus"
        },
        "error": {
          "type": "string"
        },
        "has_table_failure": {
          "type": "boolean"
        },
        "checkpoint_tso": {
          "type": "string",
          "format": "uint64"
        },
        "checkpoint_utc": {
          "type": "string",
          "format": "date-time"
        },
        "request": {
          "$ref": "#/definitions/dataflowCreateDWReplicationReq"
        },
        "tables": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowDWRTableTask"
          }
        },
        "dumpling_job_id": {
          "type": "string",
          "format": "uint64"
        },
        "changefeed_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "dw_replication_id",
        "status"
      ]
    },
    "dataflowDWReplicationID": {
      "type": "object",
      "properties": {
        "dw_replication_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "dw_replication_id",
        "cluster_id",
        "org_id",
        "project_id"
      ]
    },
    "dataflowDWReplicationStatus": {
      "type": "string",
      "enum": [
        "RUNNING",
        "ERROR",
        "CREATING",
        "TERMINATED"
      ],
      "default": "RUNNING"
    },
    "dataflowDWReplications": {
      "type": "object",
      "properties": {
        "dw_replications": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowDWReplication"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowDataFormat": {
      "type": "object",
      "properties": {
        "protocol": {
          "$ref": "#/definitions/dataflowProtocol"
        },
        "enable_tidb_extension": {
          "type": "boolean"
        },
        "decimal_handling_mode": {
          "$ref": "#/definitions/dataflowDecimalHandlingMode"
        },
        "bigint_unsigned_handling_mode": {
          "$ref": "#/definitions/dataflowBigintUnsignedHandlingMode"
        },
        "schema_registry": {
          "$ref": "#/definitions/dataflowSchemaRegistry"
        }
      }
    },
    "dataflowDataIngestionProfile": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        },
        "aws_external_id": {
          "type": "string"
        },
        "aws_account_id": {
          "type": "string"
        },
        "gcp_account_id": {
          "type": "string"
        },
        "import_role_arn": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "aws_external_id",
        "aws_account_id",
        "gcp_account_id"
      ]
    },
    "dataflowDecimalHandlingMode": {
      "type": "string",
      "enum": [
        "DECIMAL_HANDLING_MODE_PRECISE",
        "DECIMAL_HANDLING_MODE_STRING"
      ],
      "default": "DECIMAL_HANDLING_MODE_PRECISE"
    },
    "dataflowDescribeSchemaTableResp": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "replicate_allow_schema_table": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "replicate_deny_schema_table": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "gc_safe_point": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "cluster_id",
        "project_id"
      ]
    },
    "dataflowDetachReplicationReqDetachType": {
      "type": "string",
      "enum": [
        "Planned",
        "Force",
        "None"
      ],
      "default": "Planned"
    },
    "dataflowDetachReplicationResp": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "replication_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "cluster_id",
        "replication_id"
      ]
    },
    "dataflowDispatchType": {
      "type": "string",
      "enum": [
        "DISPATCH_TYPE_ONE_TOPIC",
        "DISPATCH_TYPE_BY_TABLE",
        "DISPATCH_TYPE_BY_DATABASE"
      ],
      "default": "DISPATCH_TYPE_ONE_TOPIC"
    },
    "dataflowDumplingConfig": {
      "type": "object",
      "properties": {
        "source_filters": {
          "type": "string"
        },
        "source_username": {
          "type": "string"
        },
        "source_password": {
          "type": "string"
        },
        "thread_num": {
          "type": "integer",
          "format": "int64"
        },
        "file_size": {
          "type": "string",
          "title": "The file size resulting from the partitioning of table data\nmust specify the unit (such as 128B, 64KiB, 32MiB, 1.5GiB)"
        },
        "consistency": {
          "type": "string",
          "title": "Valid values includes:\n flush: Use FTWRL before dumping\n snapshot: Specify dumping TiDB data at a specific snapshot time using TSO\n lock: Execute 'lock tables read' command on all tables that need to be dumped\n none: Dump without locking, data consistency cannot be guaranteed\n auto(default value): Same as snapshot"
        },
        "snapshot_tso": {
          "type": "string",
          "format": "uint64",
          "title": "Only useful when consistency is 'snapshot'"
        },
        "csv_delimiter": {
          "type": "string"
        },
        "csv_separator": {
          "type": "string"
        },
        "csv_null_value": {
          "type": "string"
        },
        "rows": {
          "type": "string",
          "format": "uint64"
        },
        "csv_output_dialect": {
          "type": "string"
        }
      },
      "required": [
        "source_username",
        "source_password"
      ]
    },
    "dataflowDumplingObjectStore": {
      "type": "object",
      "properties": {
        "kind": {
          "$ref": "#/definitions/dataflowDumplingObjectStoreKind"
        },
        "s3": {
          "$ref": "#/definitions/dataflowObjectStoreS3",
          "description": "Note: We are not using oneof, because the generated go code does not support\nchecking the variant type."
        },
        "gcs": {
          "$ref": "#/definitions/dataflowObjectStoreGCS"
        }
      },
      "required": [
        "kind"
      ]
    },
    "dataflowDumplingObjectStoreKind": {
      "type": "string",
      "enum": [
        "S3",
        "GCS"
      ],
      "default": "S3"
    },
    "dataflowDumplingTask": {
      "type": "object",
      "properties": {
        "dumpling_id": {
          "type": "string",
          "format": "uint64"
        },
        "status": {
          "$ref": "#/definitions/dataflowDumplingTaskStatus"
        },
        "error": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "request": {
          "$ref": "#/definitions/dataflowCreateDumplingTaskReq"
        }
      },
      "required": [
        "dumpling_id",
        "status"
      ]
    },
    "dataflowDumplingTaskID": {
      "type": "object",
      "properties": {
        "dumpling_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "dumpling_id",
        "cluster_id",
        "org_id",
        "project_id"
      ]
    },
    "dataflowDumplingTaskStatus": {
      "type": "string",
      "enum": [
        "PENDING",
        "CREATING",
        "RUNNING",
        "COMPLETED",
        "FAILED",
        "CANCELING",
        "CANCELED"
      ],
      "default": "PENDING"
    },
    "dataflowDupHandlingForSql": {
      "type": "string",
      "enum": [
        "DUP_HANDLING_FOR_SQL_UNKNOWN",
        "DUP_HANDLING_FOR_SQL_REPLACE",
        "DUP_HANDLING_FOR_SQL_IGNORE",
        "DUP_HANDLING_FOR_SQL_ERROR"
      ],
      "default": "DUP_HANDLING_FOR_SQL_UNKNOWN"
    },
    "dataflowEnabledDPFeaturesForClusterResp": {
      "type": "object",
      "properties": {
        "features": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "features"
      ]
    },
    "dataflowEventFilterRule": {
      "type": "object",
      "properties": {
        "matcher": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignore_event": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignore_sql": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignore_insert_value_expr": {
          "type": "string"
        },
        "ignore_update_new_value_expr": {
          "type": "string"
        },
        "ignore_update_old_value_expr": {
          "type": "string"
        },
        "ignore_delete_value_expr": {
          "type": "string"
        }
      }
    },
    "dataflowFlatClusterComponent": {
      "type": "object",
      "properties": {
        "component_type": {
          "$ref": "#/definitions/dataflowComponentType",
          "title": "required by create/update"
        },
        "node_profile_name": {
          "type": "string",
          "description": "required by create/update",
          "title": "uint64 node_profile_id = 2; deprecated"
        },
        "replicas": {
          "type": "integer",
          "format": "int32",
          "title": "required by create/update"
        },
        "compute_instance_type": {
          "type": "string"
        },
        "cpu_num": {
          "type": "integer",
          "format": "int32"
        },
        "memory_gi": {
          "type": "string",
          "format": "int64"
        },
        "storage_instance_type": {
          "type": "string"
        },
        "storage_size_gi": {
          "type": "string",
          "format": "int64",
          "title": "required by create/update"
        }
      }
    },
    "dataflowGcsEndpoint": {
      "type": "object",
      "properties": {
        "gcsUri": {
          "type": "string"
        }
      }
    },
    "dataflowGcsInfo": {
      "type": "object",
      "properties": {
        "endpoint": {
          "$ref": "#/definitions/dataflowGcsEndpoint"
        },
        "data_format": {
          "$ref": "#/definitions/dataflowS3Dataformat"
        },
        "table_config": {
          "$ref": "#/definitions/dataflowTableConfig"
        },
        "start_position": {
          "$ref": "#/definitions/dataflowStartPosition"
        },
        "storage_flush_config": {
          "$ref": "#/definitions/dataflowStorageFlushConfig"
        }
      }
    },
    "dataflowGetClusterTCUResp": {
      "type": "object",
      "properties": {
        "tcu_number": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "tcu_number"
      ]
    },
    "dataflowGetRestoreResp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "create_timestamp": {
          "type": "string",
          "format": "date-time"
        },
        "backup_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "status": {
          "$ref": "#/definitions/dataflowGetRestoreRespStatusEnum"
        },
        "cluster": {
          "$ref": "#/definitions/dataflowClusterInfoOfRestore"
        }
      }
    },
    "dataflowGetRestoreRespStatusEnum": {
      "type": "string",
      "enum": [
        "RESTORE_STATUS_UNSPECIFIED",
        "PENDING",
        "RUNNING",
        "FAILED",
        "SUCCESS"
      ],
      "default": "RESTORE_STATUS_UNSPECIFIED"
    },
    "dataflowGetS3BucketRegionResp": {
      "type": "object",
      "properties": {
        "region": {
          "type": "string"
        }
      },
      "required": [
        "region"
      ]
    },
    "dataflowImportCreateReq": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "source_url": {
          "type": "string",
          "title": "import info"
        },
        "region": {
          "type": "string"
        },
        "data_format": {
          "type": "integer",
          "format": "int64",
          "title": "1: sql statement(dumpling default format\n2: aurora snapshot(parquet)\n3: custom csv\n4: parquet format(not aurora)"
        },
        "data_source_type": {
          "type": "integer",
          "format": "int64",
          "title": "1: aws s3\n2: GCS"
        },
        "target_username": {
          "type": "string",
          "description": "deprecated, use internal user instead"
        },
        "target_password": {
          "type": "string",
          "description": "deprecated, use internal password instead"
        },
        "filter": {
          "type": "string",
          "description": "deprecated, use target_table_infos instead"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "csv_format": {
          "$ref": "#/definitions/dataflowCustomCSVFormat"
        },
        "aws_role_arn": {
          "type": "string"
        },
        "object_name_pattern": {
          "type": "string",
          "description": "deprecated, use target_table_infos instead"
        },
        "target_table_pattern": {
          "type": "string",
          "description": "deprecated, use target_table_infos instead"
        },
        "local_import_cfg": {
          "$ref": "#/definitions/dataflowLocalImportCfg"
        },
        "name": {
          "type": "string"
        },
        "dup_handling_for_sql": {
          "$ref": "#/definitions/dataflowDupHandlingForSql"
        },
        "aws_access_key_id": {
          "type": "string"
        },
        "aws_secret_access_key": {
          "type": "string"
        },
        "target_table_infos": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowImportTargetTableInfo"
          }
        },
        "need_drop_tables": {
          "type": "boolean",
          "title": "need_drop_tables is only used in tutorial"
        }
      },
      "required": [
        "cluster_id",
        "region",
        "data_format",
        "data_source_type",
        "org_id",
        "project_id"
      ]
    },
    "dataflowImportDataFormat": {
      "type": "string",
      "enum": [
        "UNKNOWN_FORMAT",
        "SQL",
        "AURORA_SNAPSHOT",
        "CSV",
        "PARQUET"
      ],
      "default": "UNKNOWN_FORMAT",
      "title": "- AURORA_SNAPSHOT: the parquet dumped from aurora"
    },
    "dataflowImportGetResp": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "total_size": {
          "type": "string",
          "format": "uint64"
        },
        "total_files": {
          "type": "integer",
          "format": "int64"
        },
        "source_url": {
          "type": "string"
        },
        "completed_tables": {
          "type": "integer",
          "format": "int64"
        },
        "pending_tables": {
          "type": "integer",
          "format": "int64"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "status": {
          "$ref": "#/definitions/dataflowImportGetRespStatus"
        },
        "completed_percent": {
          "type": "integer",
          "format": "int64",
          "description": "1~100.  It doesn't include the post-processing progress."
        },
        "current_tables": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowCurrentTable"
          }
        },
        "data_format": {
          "type": "integer",
          "format": "int64"
        },
        "data_source_type": {
          "type": "integer",
          "format": "int64"
        },
        "message": {
          "type": "string"
        },
        "elapsed_time_seconds": {
          "type": "integer",
          "format": "int64"
        },
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "processed_source_data_size": {
          "type": "string",
          "format": "uint64"
        },
        "total_tables_count": {
          "type": "integer",
          "format": "int64"
        },
        "post_import_completed_percent": {
          "type": "integer",
          "format": "int64",
          "title": "1~100"
        },
        "all_completed_tables": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowImportTableCompletionInfo"
          },
          "description": "all completed means whole process (import + post-process) has finised.  It may contain warnings or errors."
        },
        "import_create_req": {
          "$ref": "#/definitions/dataflowImportCreateReq"
        },
        "name": {
          "type": "string"
        },
        "created_by": {
          "type": "string"
        }
      },
      "required": [
        "cluster_id",
        "total_size",
        "total_files",
        "source_url",
        "completed_tables",
        "pending_tables",
        "created_at",
        "status",
        "completed_percent",
        "current_tables",
        "data_format",
        "data_source_type",
        "message",
        "elapsed_time_seconds"
      ]
    },
    "dataflowImportGetRespStatus": {
      "type": "string",
      "enum": [
        "UNKNOWN",
        "PREPARING",
        "IMPORTING",
        "COMPLETED",
        "FAILED",
        "CANCELING",
        "CANCELED"
      ],
      "default": "UNKNOWN"
    },
    "dataflowImportTableCompletionInfo": {
      "type": "object",
      "properties": {
        "table_name": {
          "type": "string"
        },
        "result": {
          "$ref": "#/definitions/dataflowImportTableCompletionInfoResult"
        },
        "message": {
          "type": "string"
        }
      },
      "required": [
        "table_name",
        "result"
      ]
    },
    "dataflowImportTableCompletionInfoResult": {
      "type": "string",
      "enum": [
        "UNKNOWN",
        "SUCCESS",
        "WARNING",
        "ERROR"
      ],
      "default": "UNKNOWN"
    },
    "dataflowImportTargetTableInfo": {
      "type": "object",
      "properties": {
        "target_table": {
          "$ref": "#/definitions/commonTable"
        },
        "custom_file": {
          "type": "string",
          "description": "If the custom_file is empty, will use the default rule to import data."
        },
        "matched_uri": {
          "type": "string"
        }
      }
    },
    "dataflowImportValidationItem": {
      "type": "string",
      "enum": [
        "UNKNOWN",
        "SOURCE_ACCESS_CHECK",
        "TARGET_ACCESS_CHECK",
        "FILTER_AND_RULE_CHECK",
        "IMPORT_PRECHECK",
        "TARGET_TABLE_EMPTY_CHECK",
        "ESTIMATE_SIZE",
        "IMPORT_DATA_ONLY_CHECK"
      ],
      "default": "UNKNOWN",
      "title": "- TARGET_ACCESS_CHECK: deprecated\n - FILTER_AND_RULE_CHECK: deprecated\n - ESTIMATE_SIZE: deprecated"
    },
    "dataflowImportsApplyTableFiltersReq": {
      "type": "object",
      "properties": {
        "tables": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "tables",
        "filters"
      ]
    },
    "dataflowImportsApplyTableFiltersResp": {
      "type": "object",
      "properties": {
        "import_tables": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignore_tables": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "import_tables",
        "ignore_tables"
      ]
    },
    "dataflowImportsGenerateUploadUrlResp": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "title": "expiration is one minute"
        },
        "file_name": {
          "type": "string",
          "title": "pattern: {user_id}/{file_name}"
        }
      }
    },
    "dataflowImportsGetClusterTablesResp": {
      "type": "object",
      "properties": {
        "schemas": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/agentSchema"
          }
        }
      }
    },
    "dataflowImportsGetSchemasMetaResp": {
      "type": "object",
      "properties": {
        "schemas_meta": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/agentImportsSchemaMeta"
          },
          "title": "map: \u003cschema id, schema meta\u003e"
        },
        "base_resp": {
          "$ref": "#/definitions/baseBaseResp"
        }
      },
      "required": [
        "schemas_meta"
      ]
    },
    "dataflowImportsGetTableColumnsResp": {
      "type": "object",
      "properties": {
        "table": {
          "$ref": "#/definitions/agentTable"
        }
      }
    },
    "dataflowImportsListDataTypesResp": {
      "type": "object",
      "properties": {
        "data_types": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "dataflowImportsPreviewCsvFileResp": {
      "type": "object",
      "properties": {
        "table": {
          "$ref": "#/definitions/agentTable"
        },
        "warning_message": {
          "type": "string",
          "title": "not used yet"
        }
      }
    },
    "dataflowImportsPreviewLocalResp": {
      "type": "object",
      "properties": {
        "table": {
          "$ref": "#/definitions/agentTable",
          "title": "local file only contains one table"
        }
      }
    },
    "dataflowImportsPreviewResp": {
      "type": "object",
      "properties": {
        "schemas": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/agentSchema"
          }
        },
        "base_resp": {
          "$ref": "#/definitions/baseBaseResp"
        }
      },
      "required": [
        "schemas"
      ]
    },
    "dataflowImportsSearchImportFilesResp": {
      "type": "object",
      "properties": {
        "target_tables": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowImportsSearchImportFilesRespTableMatch"
          }
        },
        "warning_message": {
          "type": "string"
        }
      }
    },
    "dataflowImportsSearchImportFilesRespTableMatch": {
      "type": "object",
      "properties": {
        "target_table": {
          "$ref": "#/definitions/commonTable"
        },
        "source_uri": {
          "type": "string"
        },
        "warning_message": {
          "type": "string"
        }
      }
    },
    "dataflowKafkaAuthType": {
      "type": "string",
      "enum": [
        "DISABLE",
        "SASL_PLAIN",
        "SASL_SCRAM_SHA_256",
        "SASL_SCRAM_SHA_512"
      ],
      "default": "DISABLE"
    },
    "dataflowKafkaInfo": {
      "type": "object",
      "properties": {
        "broker": {
          "$ref": "#/definitions/dataflowBroker"
        },
        "authentication": {
          "$ref": "#/definitions/dataflowAuthentication"
        },
        "data_format": {
          "$ref": "#/definitions/dataflowDataFormat"
        },
        "topic_partition_config": {
          "$ref": "#/definitions/dataflowTopicPartitionConfig"
        },
        "table_config": {
          "$ref": "#/definitions/dataflowTableConfig"
        },
        "start_position": {
          "$ref": "#/definitions/dataflowStartPosition"
        }
      }
    },
    "dataflowKafkaVersion": {
      "type": "string",
      "enum": [
        "KAFKA_VERSION_0XX",
        "KAFKA_VERSION_1XX",
        "KAFKA_VERSION_2XX",
        "KAFKA_VERSION_3XX"
      ],
      "default": "KAFKA_VERSION_0XX"
    },
    "dataflowListImportResp": {
      "type": "object",
      "properties": {
        "imports": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowImportGetResp"
          }
        },
        "total": {
          "type": "string",
          "format": "int64"
        }
      },
      "required": [
        "imports",
        "total"
      ]
    },
    "dataflowListRecycleBinClustersResp": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "format": "int32"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowRecycleBinCluster"
          }
        }
      },
      "required": [
        "total",
        "items"
      ]
    },
    "dataflowListReplicationsResp": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "format": "int32"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowListReplicationsRespReplication"
          }
        }
      }
    },
    "dataflowListReplicationsRespReplication": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "detach_user_id": {
          "type": "string",
          "format": "uint64"
        },
        "create_at": {
          "type": "string",
          "format": "date-time"
        },
        "detach_at": {
          "type": "string",
          "format": "date-time"
        },
        "lag_time_when_detach": {
          "type": "string",
          "format": "uint64"
        },
        "status": {
          "$ref": "#/definitions/ListReplicationsReqReplicationStatus"
        },
        "progress": {
          "$ref": "#/definitions/ListReplicationsRespReplicationProgress"
        },
        "primary_cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "secondary_cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "secondary_user_id": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "dataflowListRestoreOfProjectResp": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowListRestoreRespItem"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowListRestoreRespItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "create_timestamp": {
          "type": "string",
          "format": "date-time"
        },
        "backup_id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "status": {
          "$ref": "#/definitions/dataflowListRestoreRespItemStatusEnum"
        },
        "cluster": {
          "$ref": "#/definitions/dataflowClusterInfoOfRestore"
        }
      }
    },
    "dataflowListRestoreRespItemStatusEnum": {
      "type": "string",
      "enum": [
        "RESTORE_STATUS_UNSPECIFIED",
        "PENDING",
        "RUNNING",
        "FAILED",
        "SUCCESS"
      ],
      "default": "RESTORE_STATUS_UNSPECIFIED"
    },
    "dataflowListServerlessPiTRTimeRangesResp": {
      "type": "object",
      "properties": {
        "time_ranges": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowServerlessPiTRTimeRange"
          }
        }
      },
      "required": [
        "time_ranges"
      ]
    },
    "dataflowListServerlessRestoresResp": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowServerlessRestore"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "items",
        "total"
      ]
    },
    "dataflowLocalImportCfg": {
      "type": "object",
      "properties": {
        "file_name": {
          "type": "string"
        },
        "target_table": {
          "$ref": "#/definitions/commonTable"
        },
        "columns": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowColumnInfo"
          },
          "title": "do not create target table when columns.length is 0"
        },
        "original_file_name": {
          "type": "string"
        },
        "pk_columns": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "total_size": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "dataflowLogBackup": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "backup_schedule_id": {
          "type": "string",
          "format": "uint64"
        },
        "name": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "start_ts": {
          "type": "string",
          "format": "date-time"
        },
        "check_point_ts": {
          "type": "string",
          "format": "date-time"
        },
        "truncate_until": {
          "type": "string",
          "format": "date-time"
        },
        "status": {
          "$ref": "#/definitions/dataflowLogBackupStatus"
        }
      },
      "required": [
        "id",
        "cluster_id",
        "backup_schedule_id",
        "name",
        "created_at",
        "start_ts",
        "status"
      ]
    },
    "dataflowLogBackupListResp": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowLogBackup"
          }
        },
        "total": {
          "type": "integer",
          "format": "int64"
        }
      },
      "required": [
        "items",
        "total"
      ]
    },
    "dataflowLogBackupStatus": {
      "type": "string",
      "enum": [
        "UNSPECIFIED",
        "PENDING",
        "RUNNING",
        "STOPPING",
        "STOPPED",
        "PAUSING",
        "PAUSED",
        "RESUMING",
        "FAILED",
        "SCHEDULED"
      ],
      "default": "UNSPECIFIED"
    },
    "dataflowModifyServerlessBackupSettingResp": {
      "type": "object"
    },
    "dataflowMySQLInfo": {
      "type": "object",
      "properties": {
        "connection": {
          "$ref": "#/definitions/dataflowConnection"
        },
        "table_config": {
          "$ref": "#/definitions/dataflowTableConfig"
        },
        "start_position": {
          "$ref": "#/definitions/dataflowStartPosition"
        },
        "privatelink_info": {
          "$ref": "#/definitions/dataflowPrivatelinkInfo"
        }
      }
    },
    "dataflowNodeProfile": {
      "type": "object",
      "properties": {
        "compute": {
          "$ref": "#/definitions/dataflowCompute"
        },
        "storage_gi": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string",
          "title": "uint64 node_profile_id = 3; deprecated"
        }
      },
      "required": [
        "compute",
        "storage_gi",
        "name"
      ]
    },
    "dataflowObjectStoreGCS": {
      "type": "object",
      "properties": {
        "uri": {
          "type": "string",
          "title": "Must be prefixed with gcs:// or gs://"
        }
      },
      "required": [
        "uri"
      ]
    },
    "dataflowObjectStoreS3": {
      "type": "object",
      "properties": {
        "uri": {
          "type": "string",
          "title": "Must be prefixed with s3://"
        },
        "access_key": {
          "type": "string"
        },
        "secret_key": {
          "type": "string"
        }
      },
      "description": "This message does not have DWR prefix, because it is shared with Dumpling service.",
      "required": [
        "uri",
        "access_key",
        "secret_key"
      ]
    },
    "dataflowParamItem": {
      "type": "object",
      "properties": {
        "value": {},
        "comment": {
          "type": "string"
        }
      }
    },
    "dataflowPartitionDispatcher": {
      "type": "string",
      "enum": [
        "TABLE",
        "INDEX_VALUE"
      ],
      "default": "TABLE"
    },
    "dataflowPiTRRegionTimeRange": {
      "type": "object",
      "properties": {
        "region": {
          "$ref": "#/definitions/dataflowRegionInfo"
        },
        "time_ranges": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowPiTRTimeRange"
          }
        }
      }
    },
    "dataflowPiTRSetting": {
      "type": "object",
      "properties": {
        "enable": {
          "type": "boolean"
        },
        "msg": {
          "type": "string"
        }
      }
    },
    "dataflowPiTRTimeRange": {
      "type": "object",
      "properties": {
        "start_ts": {
          "type": "string",
          "format": "date-time"
        },
        "end_ts": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "dataflowPiTRTimeRangeListResp": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowPiTRRegionTimeRange"
          }
        },
        "msg": {
          "type": "string"
        }
      },
      "required": [
        "items",
        "msg"
      ]
    },
    "dataflowPrivatelinkInfo": {
      "type": "object",
      "properties": {
        "df_privatelink_endpoint_id": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "dataflowProtocol": {
      "type": "string",
      "enum": [
        "CANAL_JSON",
        "OPEN_PROTOCOL",
        "AVRO"
      ],
      "default": "CANAL_JSON"
    },
    "dataflowQueryServerlessBackupSettingResp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "auto_backup_setting": {
          "$ref": "#/definitions/dataflowServerlessAutoBackupSetting"
        }
      }
    },
    "dataflowRecycleBinCluster": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "name": {
          "type": "string"
        },
        "provider": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "region_name": {
          "type": "string"
        },
        "delete_time": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "id",
        "name",
        "provider",
        "region",
        "region_name",
        "delete_time"
      ]
    },
    "dataflowRegionInfo": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "display_name": {
          "type": "string"
        }
      }
    },
    "dataflowReplicationType": {
      "type": "string",
      "enum": [
        "TYPE_UNSPECIFIED",
        "TYPE_CDC"
      ],
      "default": "TYPE_UNSPECIFIED"
    },
    "dataflowRestoreErrorInfo": {
      "type": "object",
      "properties": {
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        }
      }
    },
    "dataflowRestoreMode": {
      "type": "string",
      "enum": [
        "RESTORE_MODE_UNSPECIFIED",
        "RESTORE_MODE_SNAPSHOT",
        "RESTORE_MODE_PITR",
        "RESTORE_MODE_VOLUME_SNAPSHOT"
      ],
      "default": "RESTORE_MODE_UNSPECIFIED"
    },
    "dataflowRestoreProgressResp": {
      "type": "object",
      "properties": {
        "progress": {
          "type": "number",
          "format": "double"
        },
        "steps": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowRestoreStepProgress"
          }
        },
        "restore_status": {
          "$ref": "#/definitions/dataflowRestoreStatus"
        },
        "restore_error": {
          "$ref": "#/definitions/dataflowRestoreErrorInfo"
        },
        "restore_bytes": {
          "type": "string",
          "format": "uint64"
        }
      },
      "required": [
        "progress"
      ]
    },
    "dataflowRestoreResp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "base_resp": {
          "$ref": "#/definitions/baseBaseResp"
        }
      },
      "required": [
        "id",
        "cluster_id",
        "org_id"
      ]
    },
    "dataflowRestoreStatus": {
      "type": "string",
      "enum": [
        "RESTORE_STATUS_UNSPECIFIED",
        "RESTORE_STATUS_PENDING",
        "RESTORE_STATUS_RUNNING",
        "RESTORE_STATUS_FAILED",
        "RESTORE_STATUS_SUCCESS",
        "RESTORE_STATUS_TERMINATED"
      ],
      "default": "RESTORE_STATUS_UNSPECIFIED"
    },
    "dataflowRestoreStepProgress": {
      "type": "object",
      "properties": {
        "progress": {
          "type": "number",
          "format": "double"
        },
        "step_name": {
          "type": "string"
        }
      }
    },
    "dataflowS3Dataformat": {
      "type": "object",
      "properties": {
        "protocol": {
          "$ref": "#/definitions/dataflowS3Protocol"
        },
        "terminator": {
          "type": "string"
        },
        "date_separator": {
          "type": "string"
        },
        "enable_tidb_extension": {
          "type": "boolean"
        },
        "delimiter": {
          "type": "string"
        },
        "quote": {
          "type": "string"
        },
        "null": {
          "type": "string"
        },
        "include_commit_ts": {
          "type": "boolean"
        },
        "binary_encoding_method": {
          "$ref": "#/definitions/dataflowBinaryEncodingMethod"
        }
      }
    },
    "dataflowS3Endpoint": {
      "type": "object",
      "properties": {
        "s3Uri": {
          "type": "string"
        },
        "access_key": {
          "type": "string"
        },
        "secret_key": {
          "type": "string"
        }
      }
    },
    "dataflowS3Info": {
      "type": "object",
      "properties": {
        "endpoint": {
          "$ref": "#/definitions/dataflowS3Endpoint"
        },
        "data_format": {
          "$ref": "#/definitions/dataflowS3Dataformat"
        },
        "table_config": {
          "$ref": "#/definitions/dataflowTableConfig"
        },
        "start_position": {
          "$ref": "#/definitions/dataflowStartPosition"
        },
        "storage_flush_config": {
          "$ref": "#/definitions/dataflowStorageFlushConfig"
        }
      }
    },
    "dataflowS3Protocol": {
      "type": "string",
      "enum": [
        "S3_PROTOCOL_CSV",
        "S3_PROTOCOL_CANAL_JSON"
      ],
      "default": "S3_PROTOCOL_CSV"
    },
    "dataflowSchemaRegistry": {
      "type": "object",
      "properties": {
        "schema_registry_endpoints": {
          "type": "string"
        },
        "enableHttpAuth": {
          "type": "boolean"
        },
        "userName": {
          "type": "string"
        },
        "password": {
          "type": "string"
        }
      }
    },
    "dataflowServerlessAutoBackupSetting": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "backup_time": {
          "type": "string"
        },
        "retention_period": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "dataflowServerlessPiTRTimeRange": {
      "type": "object",
      "properties": {
        "start_ts": {
          "type": "string",
          "format": "date-time"
        },
        "end_ts": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "dataflowServerlessRestore": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "org_id": {
          "type": "string",
          "format": "uint64"
        },
        "project_id": {
          "type": "string",
          "format": "uint64"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "restore_mode": {
          "$ref": "#/definitions/dataflowRestoreMode"
        },
        "status": {
          "$ref": "#/definitions/dataflowRestoreStatus"
        },
        "restore_bytes": {
          "type": "string",
          "format": "uint64"
        },
        "progress": {
          "$ref": "#/definitions/dataflowRestoreStepProgress"
        },
        "restored_ts": {
          "type": "string",
          "format": "date-time"
        },
        "finished_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "id",
        "cluster_id",
        "org_id",
        "project_id",
        "name",
        "description",
        "created_at",
        "restore_mode",
        "status",
        "restore_bytes",
        "progress"
      ]
    },
    "dataflowServerlessTidbInfo": {
      "type": "object",
      "properties": {
        "cluster_id": {
          "type": "string",
          "format": "uint64"
        },
        "mysql_info": {
          "$ref": "#/definitions/dataflowMySQLInfo"
        }
      }
    },
    "dataflowSimpleClusterComponent": {
      "type": "object",
      "properties": {
        "component_type": {
          "$ref": "#/definitions/dataflowComponentType"
        },
        "node_profile_name": {
          "type": "string",
          "title": "uint64 node_profile_id = 2; deprecated"
        },
        "replicas": {
          "type": "integer",
          "format": "int32"
        },
        "storage_size_gi": {
          "type": "integer",
          "format": "int32"
        }
      },
      "required": [
        "component_type",
        "node_profile_name",
        "replicas",
        "storage_size_gi"
      ]
    },
    "dataflowStartMode": {
      "type": "string",
      "enum": [
        "FROM_NOW",
        "FROM_TSO",
        "FROM_UTC"
      ],
      "default": "FROM_NOW"
    },
    "dataflowStartPosition": {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/definitions/dataflowStartMode"
        },
        "tso": {
          "type": "string",
          "format": "uint64"
        },
        "utc": {
          "type": "string"
        }
      }
    },
    "dataflowStorageFlushConfig": {
      "type": "object",
      "properties": {
        "flush_interval": {
          "type": "string"
        },
        "file_size": {
          "type": "string",
          "format": "uint64"
        }
      }
    },
    "dataflowTableConfig": {
      "type": "object",
      "properties": {
        "filter_rule": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "mode": {
          "$ref": "#/definitions/dataflowTableMode"
        },
        "event_filter_rule": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowEventFilterRule"
          }
        }
      }
    },
    "dataflowTableMode": {
      "type": "string",
      "enum": [
        "IGNORE_NOT_SUPPORT_TABLE",
        "FORCE_SYNC"
      ],
      "default": "IGNORE_NOT_SUPPORT_TABLE"
    },
    "dataflowTestDWReplicationResp": {
      "type": "object",
      "properties": {
        "can_dw_connect": {
          "type": "boolean"
        },
        "dw_error_message": {
          "type": "string"
        },
        "can_s3_connect": {
          "type": "boolean"
        },
        "s3_error_message": {
          "type": "string"
        },
        "can_tidb_connect": {
          "type": "boolean"
        },
        "tidb_error_message": {
          "type": "string"
        }
      }
    },
    "dataflowTopicPartitionConfig": {
      "type": "object",
      "properties": {
        "dispatch_type": {
          "$ref": "#/definitions/dataflowDispatchType"
        },
        "default_topic": {
          "type": "string"
        },
        "topic_prefix": {
          "type": "string"
        },
        "separator": {
          "type": "string"
        },
        "topic_suffix": {
          "type": "string"
        },
        "replication_factor": {
          "type": "integer",
          "format": "int64"
        },
        "partition_num": {
          "type": "integer",
          "format": "int64"
        },
        "partition_dispatcher": {
          "$ref": "#/definitions/dataflowPartitionDispatcher"
        }
      }
    },
    "dataflowTrafficFilter": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/dataflowTrafficFilterItem"
          }
        }
      }
    },
    "dataflowTrafficFilterItem": {
      "type": "object",
      "properties": {
        "cidr": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      }
    },
    "dataflowVolumeBackupSetting": {
      "type": "object",
      "properties": {
        "hidden": {
          "type": "boolean",
          "title": "whether user can set ebs"
        },
        "enable": {
          "type": "boolean",
          "title": "whether open ebs feature"
        },
        "description": {
          "type": "string"
        }
      }
    },
    "dataflowWeekDay": {
      "type": "string",
      "enum": [
        "SUNDAY",
        "MONDAY",
        "TUESDAY",
        "WEDNESDAY",
        "THURSDAY",
        "FRIDAY",
        "SATURDAY"
      ],
      "default": "SUNDAY"
    },
    "googlerpcStatus": {
      "type": "object",
      "properties": {
        "code": {
          "type": "integer",
          "format": "int32"
        },
        "message": {
          "type": "string"
        },
        "details": {
          "type": "array",
          "items": {
            "type": "object",
            "$ref": "#/definitions/protobufAny"
          }
        }
      }
    },
    "protobufAny": {
      "type": "object",
      "properties": {
        "@type": {
          "type": "string",
          "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n  value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n  URL, or have them precompiled into a binary to avoid any\n  lookup. Therefore, binary compatibility needs to be preserved\n  on changes to types. (Use versioned type names to manage\n  breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
        }
      },
      "additionalProperties": {},
      "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n    Foo foo = ...;\n    Any any;\n    any.PackFrom(foo);\n    ...\n    if (any.UnpackTo(\u0026foo)) {\n      ...\n    }\n\nExample 2: Pack and unpack a message in Java.\n\n    Foo foo = ...;\n    Any any = Any.pack(foo);\n    ...\n    if (any.is(Foo.class)) {\n      foo = any.unpack(Foo.class);\n    }\n\nExample 3: Pack and unpack a message in Python.\n\n    foo = Foo(...)\n    any = Any()\n    any.Pack(foo)\n    ...\n    if any.Is(Foo.DESCRIPTOR):\n      any.Unpack(foo)\n      ...\n\nExample 4: Pack and unpack a message in Go\n\n     foo := \u0026pb.Foo{...}\n     any, err := anypb.New(foo)\n     if err != nil {\n       ...\n     }\n     ...\n     foo := \u0026pb.Foo{}\n     if err := any.UnmarshalTo(foo); err != nil {\n       ...\n     }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n    package google.profile;\n    message Person {\n      string first_name = 1;\n      string last_name = 2;\n    }\n\n    {\n      \"@type\": \"type.googleapis.com/google.profile.Person\",\n      \"firstName\": \u003cstring\u003e,\n      \"lastName\": \u003cstring\u003e\n    }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n    {\n      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n      \"value\": \"1.212s\"\n    }"
    },
    "protobufNullValue": {
      "type": "string",
      "enum": [
        "NULL_VALUE"
      ],
      "default": "NULL_VALUE",
      "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value."
    }
  },
  "securityDefinitions": {
    "bearer": {
      "type": "apiKey",
      "description": "Authentication token, prefixed by Bearer: Bearer \u003ctoken\u003e",
      "name": "Authorization",
      "in": "header"
    }
  },
  "security": [
    {
      "bearer": []
    }
  ],
  "externalDocs": {
    "description": "DBaaS Dataflow Service",
    "url": "https://github.com/tidbcloud/dataflow-service"
  }
}
