

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# サービスと Step Functions の統合
<a name="integrate-services"></a>

HTTPS APIs を Step Functions と統合 AWS のサービス して呼び出す方法について説明します。サービス統合により、ワークフローはリソースを調整し、ビジネスプロセスをオーケストレーションできます。

ワークフローのタイプと可用性に応じて、ワークフローは 3 つのサービス統合パターンのいずれかを使用してサービスを呼び出します。
+ レスポンスのリクエスト (デフォルト) - HTTP レスポンスを待ってから次の状態に進みます。
+ ジョブの実行 (`.sync`) - ジョブが完了するまで待機する
+ Wait for Callback (`.waitForTaskToken`) - タスクトークンが返されるまでワークフローを一時停止します

詳細については[サービス統合パターン](connect-to-resource.md)を参照してください。また、統合サービスへのデータフローの制御の詳細については、「[Step Functions でサービス API にパラメータを渡す](connect-parameters.md)」を参照してください。

## AWS SDK 統合
<a name="connect-to-services-awssdk"></a>

AWS SDK 統合は、 AWS SDK を使用した API コールとまったく同じように機能します。

を使用すると[AWS SDK 統合](supported-services-awssdk.md)、ステートマシンは 200 を超える AWS サービスに対して 9,000 を超える API アクションを呼び出すことができます。

**Example 使用できる統合:**  
+  AWS Lambda 関数を呼び出します。
+  AWS Batch ジョブを実行し、結果に基づいてさまざまなアクションを実行します。
+ Amazon DynamoDB 内の項目を取得または更新します。
+ Amazon Elastic Container Service (Amazon ECS) タスクを実行し、完了するまで待機します。
+ Amazon Simple Notification Service (Amazon SNS) でトピックを発行します。
+ Amazon Simple Queue Service (Amazon SQS) にメッセージを送信します。
+  AWS Glue または Amazon SageMaker AI のジョブを管理します。
+ Amazon EMR ジョブを実行するためのワークフローを構築します。
+ 別の AWS Step Functions ワークフロー実行を起動します。

## 最適化された統合
<a name="connect-to-services-optimized"></a>

標準統合に加えて、Step Functions には機能強化した最適化統合も用意されています。最適化統合は、Step Functions でカスタマイズされており、ワークフローコンテキスト内でサービスを統合する際のデベロッパーのエクスペリエンスが向上するよう設計されています。

例えば、最適化された [Lambda `Invoke`](connect-lambda.md) は、API 出力をエスケープされた JSON から JSON オブジェクトに自動変換し、扱いやすくします。また、[AWS Batch`SubmitJob`](connect-batch.md) は、バッチジョブが完了するまで実行を一時停止できます。これは一般的なシナリオです。

可能であれば、最適化統合を使用することを**お勧め**します。

最適化統合の完全なリストについては、[最適化されたサービスと Step Functions の統合](integrate-optimized.md) に関する章を参照してください。

## HTTPS API の呼び出し
<a name="connect-to-services-https"></a>

HTTP タスクは [Task ワークフロー状態](state-task.md) ステートの一種で、ワークフロー内から HTTPS API を呼び出す際に使用できます。API は、Stripe や Salesforce などのサードパーティ SaaS アプリのようなパブリック API でもかまいません。また、Amazon Virtual Private Cloud 内の HTTPS ベースのアプリケーションなど、プライベート API を呼び出すこともできます。

詳細については、「[Step Functions ワークフローで HTTPS API を呼び出す](call-https-apis.md)」を参照してください。