5.5. Fuse Online パブリック API インポートエンドポイントの呼び出し

Fuse Online のパブリック API エクスポートエンドポイントを呼び出して、1 つまたは複数のインテグレーションを取得できます。エクスポートされたインテグレーションを別の Fuse Online 環境にコピーするには、Fuse Online のパブリック API インポートエンドポイントを呼び出します。

インテグレーションをインポートするためのエンドポイント

インテグレーションをインポートするため、Fuse Online は以下の POST メソッドエンドポイントを提供します。

​/public​/integrations

以下の例では、エンドポイントは export.zip ファイルにあるインテグレーションをインポートし、testing 環境に対してタグを付けます。

/public/integrations -F data=@export.zip -F environment=testing --request POST

インポートエンドポイントは指定のインテグレーションを常にインポートします。最後にインポートされてからインテグレーションが変更されていない場合も、エンドポイントはそれをインポートします。

インポートエンドポイントに必要なカスタムヘッダー

インポートエンドポイントを呼び出すコマンドでは、以下のカスタムヘッダーを指定する必要があります。

  • -H "Content-Type: multipart/form-data"
  • -H "SYNDESIS-XSRF-TOKEN: awesome"

    このカスタムヘッダーは、上記のとおり指定する必要があります。Fuse Online のパブリック API では、リクエストの認証にこのヘッダーが必要です。

  • -H 'Authorization: Bearer <token>'

    <token> を、Fuse Online のパブリック API の公開に使用される OpenShift サービスアカウントの作成時にファイルにコピーしたシークレットトークンに置き換えます。

インテグレーションをインポートする curl コマンドの例

以下は、インテグレーションをインポートする Fuse Online API エンドポイントを呼び出す curl コマンドの例です。

curl -v -k -L -H "Content-Type: multipart/form-data" -H "SYNDESIS-XSRF-TOKEN: awesome" -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJzeW5kZXNpcyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzeW5kZXNpcy1jZC1jbGllbnQtdG9rZW4tMnZjNmwiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoic3luZGVzaXMtY2QtY2xpZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjUxMjYxNGMtMmYwMS0xMWU5LTk3OWEtNDI1YWNlMzY3MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OnN5bmRlc2lzOnN5bmRlc2lzLWNkLWNsaWVudCJ9.uKsri0JSKJDbgHoQwAhBJSNuWKwJgjegf2QlrCkhxVssSK1zIMZQaF9P5a4R7ZcWRnrZ_345UTqxYVeRlfHWVH0PqBkD-n7PAS9dcKJIFdS1jUHOmL1FTGgc3YW-bz1SlWT93tvK1EhorZ4_-EBfXhSAP4Uumi5qAg3_QUTMDstq233NSwBKYtFOw3Pp1ys3p3y0hcaiLMimeCH60vR4iWvptqqzc5QDigHiPySZNWxs_5awZlwdoIDvR-nSj690aC-49UKFgyEEdzdFU4bI2W4hOyDyhN9fVaIAZQKeJUrJBU-lnFTHI_NAd2OwzOEBpWZuj31Za5w9fU4kf4UDGA'
https://public-syndesis.192.168.64.45.nip.io/api/v1/public/integrations -F data=@export.zip -F environment=testing --request POST

このコマンドでは、以下のようになります。

  • コマンドの最後にある URL は、インテグレーションをインポートする Fuse Online 環境を識別します。
  • export.zip ファイルには、インポートされるインテグレーションが含まれます。
  • environment=testing を指定すると、エンドポイントによって、インポートされた各インテグレーションが testing 環境に対してマーク付けされます。
  • このコマンドにより multipart/form-data が作成されます。