新しい移行ジョブを送信する

POST / jobs

新しい移行ジョブを送信する

application/ JSON

body 必須

  • projectId string 必須
  • jdBCConnection Details オブジェクト 必須

    追加プロパティは許可されていません。

    jdBCConnection Details 属性を非表示にする jdBCConnection Details 属性の表示 オブジェクト
    • id string
    • タイプ string 必須

      データベース タイプまたはカスタムデータベースタイプ。例、MYSQLORACLEPOSTGRESQLSQL_SERVERCOCKROACHDBDB2SQLANYWHERESYBASESYBASEIQYUGABYTE などがあります。

    • URL string 必須
    • user string
    • パスワード string
    • SavePassword ブール値

      デフォルト値はfalseです。

    • existsConnectionId string
    • OraclePdbName string
    • isManualUri ブール値

      デフォルト値はfalseです。

  • mongodbConnection Details オブジェクト 必須

    追加プロパティは許可されていません。

    mongodbConnection Details 属性を非表示にする mongodbConnection Details 属性の表示 オブジェクト
    • id string
    • ConnectionString string 必須
    • projectId string

      Atlas projectId

    • SavePassword ブール値

      デフォルト値はfalseです。

    • プロジェクト名 string

      Atlasプロジェクト名

    • clusterName string

      Atlas クラスター名

    • existsConnectionId string
  • options オブジェクト 必須

    追加プロパティは許可されていません。

    オプション属性を非表示にする オプション属性の表示 オブジェクト
    • コレクションの削除 ブール値

      デフォルト値はfalseです。

    • モード string 必須

      値は SNAPSHOTCDC、または CDC_ONLY です。

    • errorHandling string

      値は FAILWARN、または SKIP です。デフォルト値は FAIL です。

    • errorsTolerance integer

      移行を終了する前に許容する必要がある障害の数(レコードレベル)。値は 以上である必要があります。

      の最小値は 0 です。

  • 検証 オブジェクト 必須

    追加プロパティは許可されていません。

    検証属性を非表示 検証属性の表示 オブジェクト
    • enabled ブール値 必須

      デフォルト値はfalseです。

  • retentionTableFilters オブジェクト

    各キーがスキーマ名を表すオブジェクト。各スキーマには、テーブル フィルターを適用できるテーブルが含まれています。

    retentionTableFilters 属性を非表示 relationalTableFilters 属性の表示 オブジェクト
    • * オブジェクト additionalProperties

      各キーがスキーマ内のテーブル名を表すオブジェクト。

      * 属性を非表示 * 属性を表示 オブジェクト
      • * オブジェクト additionalProperties

        追加プロパティは許可されていません。

        * 属性を非表示 * 属性を表示 オブジェクト
        • whereClaus string

          指定されたソース テーブルの行をフィルタリングするSQL WHERE 句の内容。

        • returnCount integer(int64)

          ソース テーブルから返される行数の任意の制限。

  • collectionFilters オブジェクト

    この移行にコレクションを含めるか除外します。

    • includeonly: 指定された include フィルターに一致するコレクションのみが移行されます。
    • 除外のみ: 除外フィルターに一致するコレクションを除くすべてのコレクションが移行されます。
    • を含めると除外する: 除外フィルターに一致するコレクションを、除外フィルターにも一致するコレクションを除外して移行します。
    • フィルターなし: すべてのコレクションが移行されます。
    collectionFilters 属性を非表示にする collectionFilters 属性を表示 オブジェクト
    • 次を含みます: array[string]
    • 除外します array[string]

応答

  • 200 application/ JSON

    OK

    応答属性の非表示 応答属性の表示 オブジェクト
    • id string 必須

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • projectId string 必須

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • 状態 string 必須

      値は、RUNNINGFAILEDCANCELLINGCANCELLEDCOMPLETED、または CLEANING_UP です。

    • CDCStatus string

      値は、NOT_STARTEDRUNNINGCOMPLETINGCOMPLETEDFAILEDCANCELLED、または PAUSED です。デフォルト値は NOT_STARTED です。

    • validationJobId string
    • options オブジェクト 必須

      追加プロパティは許可されていません。

      オプション属性を非表示にする オプション属性の表示 オブジェクト
      • コレクションの削除 ブール値

        デフォルト値はfalseです。

      • モード string 必須

        値は SNAPSHOTCDC、または CDC_ONLY です。

      • errorHandling string

        値は FAILWARN、または SKIP です。デフォルト値は FAIL です。

      • errorsTolerance integer

        移行を終了する前に許容する必要がある障害の数(レコードレベル)。値は 以上である必要があります。

        の最小値は 0 です。

    • jdBCConnectionString string
    • mongoDbConnectionString string
    • submittedAt string(date-time) 必須
    • 統計 オブジェクト

      追加プロパティは許可されていません。

      統計属性を非表示にする 統計属性の表示 オブジェクト
      • startedAt string(date-time)
      • expireSeconds integer(int64)
      • retentionTableCount integer
      • ProcessingTables array[string]
      • totalEventsSeen integer(int64)

        デフォルト値は0です。

      • snapshotCompleted ブール値

        デフォルト値はfalseです。

      • totalTableCount integer
      • totalEvents integer(int64)
      • totalEventSize integer(int64)
    • CDCStatistics オブジェクト

      追加プロパティは許可されていません。

      CDCStatistics 属性を非表示にする CDCStatistics 属性の表示 オブジェクト
      • startedAt string(date-time)
      • lastEventTime string(date-time)
      • eventInLastHour integer(int64)

        デフォルト値は0です。

      • eventInLastMinute integer(int64)

        デフォルト値は0です。

      • totalEventsSeen integer(int64)

        デフォルト値は0です。

    • jobUpdates array[オブジェクト]
      jobUpdates 属性を非表示 jobUpdates 属性の表示 オブジェクト
      • eventType string 必須

        値は ERRORWARNING、または INFO です。

      • ステージ string

        値は SNAPSHOTTINGSTREAMING、または VERIFICATION です。

      • メッセージ string 必須
      • 詳細 string
      • タイムスタンプ string(date-time) 必須
      • stackTrace array[string]
      • errorCode string
      • locationType string

        値は TABLE または COLLECTION です。

      • locationName string
      • フィールド名 string
      • キー オブジェクト
        キー属性を非表示 キー属性を表示 オブジェクト
        • * string additionalProperties
      • count integer(int64)
      • ロケーション オブジェクト

        次の 1 つ:
    • failError オブジェクト

      追加プロパティは許可されていません。

      failError 属性を非表示 failError 属性の表示 オブジェクト
      • errorsType string 必須
      • メッセージ string 必須
      • failAt string(date-time) 必須
      • setError ブール値 必須

        デフォルト値はfalseです。

    • metadata オブジェクト

      追加プロパティは許可されていません。

      Hide metadata attributes メタデータ属性の表示 オブジェクト
      • telemetryUserId string
      • validationRequested ブール値

        デフォルト値はfalseです。

      • validationStatus string

        値は、VERIFYINGFAILEDCANCELLINGCANCELLEDVERIFIED、または ABORTED です。

    • retentionTableFilters オブジェクト

      各キーがスキーマ名を表すオブジェクト。各スキーマには、テーブル フィルターを適用できるテーブルが含まれています。

      retentionTableFilters 属性を非表示 relationalTableFilters 属性の表示 オブジェクト
      • * オブジェクト additionalProperties

        各キーがスキーマ内のテーブル名を表すオブジェクト。

        * 属性を非表示 * 属性を表示 オブジェクト
        • * オブジェクト additionalProperties

          追加プロパティは許可されていません。

          * 属性を非表示 * 属性を表示 オブジェクト
          • whereClaus string

            指定されたソース テーブルの行をフィルタリングするSQL WHERE 句の内容。

          • returnCount integer(int64)

            ソース テーブルから返される行数の任意の制限。

  • 440 application/ JSON

    接続stringにデータベース名が含まれていないため無効です

    応答属性の非表示 応答属性の表示 オブジェクト
    • jobId string

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • メッセージ string 必須
    • 説明 string
    • タイムスタンプ string(date-time) 必須
  • 470 application/ JSON

    移行ジョブはすでに実行中

    応答属性の非表示 応答属性の表示 オブジェクト
    • jobId string

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • メッセージ string 必須
    • 説明 string
    • タイムスタンプ string(date-time) 必須
  • 471 application/ JSON

    ジョブコンテキストの例の構築エラーのため、移行ジョブを開始できませんでした - モードが認識されていないか、マッピングが存在しません。

    応答属性の非表示 応答属性の表示 オブジェクト
    • jobId string

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • メッセージ string 必須
    • 説明 string
    • タイムスタンプ string(date-time) 必須
  • 500 application/ JSON

    内部サーバーエラー

    応答属性の非表示 応答属性の表示 オブジェクト
    • jobId string

      形式は次のパターンと一致する必要があります: ^[A-Za-z0-9\-]+$

    • メッセージ string 必須
    • 説明 string
    • タイムスタンプ string(date-time) 必須
POST /jobs
curl \
 --request POST 'http://127.0.0.1:8278/api/v1/jobs' \
 --header "Content-Type: application/json" \
 --data '{"projectId":"string","jdbcConnectionDetails":{"id":"string","type":"ORACLE","url":"string","user":"string","password":"string","savePassword":false,"existingConnectionId":"string","oraclePdbName":"string","isManualUri":false},"mongodbConnectionDetails":{"id":"string","connectionString":"string","projectId":"string","savePassword":false,"projectName":"string","clusterName":"string","existingConnectionId":"string"},"options":{"dropCollections":false,"mode":"SNAPSHOT","errorHandling":"FAIL","errorTolerance":42},"verification":{"enabled":false},"relationalTableFilters":{"schema_1_name":{"table_1_name":{"whereClause":"id \u003e 1000 AND id \u003c= 2000"},"table_2_name":{"rowCount":10,"whereClause":"TRUE"}}},"collectionFilters":{"include":["string"],"exclude":["string"]}}'
リクエスト例
{
  "projectId": "string",
  "jdbcConnectionDetails": {
    "id": "string",
    "type": "ORACLE",
    "url": "string",
    "user": "string",
    "password": "string",
    "savePassword": false,
    "existingConnectionId": "string",
    "oraclePdbName": "string",
    "isManualUri": false
  },
  "mongodbConnectionDetails": {
    "id": "string",
    "connectionString": "string",
    "projectId": "string",
    "savePassword": false,
    "projectName": "string",
    "clusterName": "string",
    "existingConnectionId": "string"
  },
  "options": {
    "dropCollections": false,
    "mode": "SNAPSHOT",
    "errorHandling": "FAIL",
    "errorTolerance": 42
  },
  "verification": {
    "enabled": false
  },
  "relationalTableFilters": {
    "schema_1_name": {
      "table_1_name": {
        "whereClause": "id > 1000 AND id <= 2000"
      },
      "table_2_name": {
        "rowCount": 10,
        "whereClause": "TRUE"
      }
    }
  },
  "collectionFilters": {
    "include": [
      "string"
    ],
    "exclude": [
      "string"
    ]
  }
}
応答の例(200)
{
  "id": "string",
  "projectId": "string",
  "status": "RUNNING",
  "cdcStatus": "NOT_STARTED",
  "verificationJobId": "string",
  "options": {
    "dropCollections": false,
    "mode": "SNAPSHOT",
    "errorHandling": "FAIL",
    "errorTolerance": 42
  },
  "jdbcConnectionString": "string",
  "mongoDbConnectionString": "string",
  "submittedAt": "2025-05-04T09:42:00Z",
  "statistics": {
    "startedAt": "2025-05-04T09:42:00Z",
    "elapsedSeconds": 42,
    "remainingTableCount": 42,
    "processingTables": [
      "string"
    ],
    "totalEventsSeen": 0,
    "snapshotCompleted": false,
    "totalTableCount": 42,
    "totalEvents": 42,
    "totalEventSize": 42
  },
  "cdcStatistics": {
    "startedAt": "2025-05-04T09:42:00Z",
    "lastEventTime": "2025-05-04T09:42:00Z",
    "eventsInLastHour": 0,
    "eventsInLastMinute": 0,
    "totalEventsSeen": 0
  },
  "jobUpdates": [
    {
      "eventType": "ERROR",
      "stage": "SNAPSHOTTING",
      "message": "string",
      "details": "string",
      "timestamp": "2025-05-04T09:42:00Z",
      "stackTrace": [
        "string"
      ],
      "errorCode": "string",
      "locationType": "TABLE",
      "locationName": "string",
      "fieldName": "string",
      "key": {
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      },
      "count": 42,
      "location": {
        "table": "string"
      }
    }
  ],
  "failureError": {
    "errorType": "string",
    "message": "string",
    "failureAt": "2025-05-04T09:42:00Z",
    "setupError": false
  },
  "metadata": {
    "telemetryUserId": "string",
    "verificationRequested": false,
    "verificationStatus": "VERIFYING"
  },
  "relationalTableFilters": {
    "schema_1_name": {
      "table_1_name": {
        "whereClause": "id > 1000 AND id <= 2000"
      },
      "table_2_name": {
        "rowCount": 10,
        "whereClause": "TRUE"
      }
    }
  }
}
応答の例(440)
{
  "jobId": "string",
  "message": "string",
  "description": "string",
  "timestamp": "2025-05-04T09:42:00Z"
}
応答の例(470)
{
  "jobId": "string",
  "message": "string",
  "description": "string",
  "timestamp": "2025-05-04T09:42:00Z"
}
応答の例(471)
{
  "jobId": "string",
  "message": "string",
  "description": "string",
  "timestamp": "2025-05-04T09:42:00Z"
}
応答の例(500)
{
  "jobId": "string",
  "message": "string",
  "description": "string",
  "timestamp": "2025-05-04T09:42:00Z"
}