Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Step Functionsの新機能「Call third-party API」を試してみた
Search
KMiura
December 20, 2023
Technology
1
210
AWS Step Functionsの新機能「Call third-party API」を試してみた
2023.12.20 color is【クラウドLT大会vol.6】大型アップデート祭り
https://saison-coloris.connpass.com/event/303486/
KMiura
December 20, 2023
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
60
Pythonでルンバをハックしてみた
miura55
0
130
あなたの知らないクラフトビールの世界
miura55
0
320
Storage Browser for Amazon S3を触ってみた + α
miura55
0
180
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
190
あのボタンでつながるSORACOM
miura55
0
120
Postman Flowsで作るAPI連携LINE Bot
miura55
0
360
Lambdaと共に歩んだAWS
miura55
3
790
Other Decks in Technology
See All in Technology
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
310
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
360
AI専用のリンターを作る #yumemi_patch
bengo4com
5
4.3k
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
4
13k
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
110
データグループにおけるフロントエンド開発
lycorptech_jp
PRO
1
110
CRE Camp #1 エンジニアリングを民主化するCREチームでありたい話
mntsq
1
130
KubeCon + CloudNativeCon Japan 2025 Recap by CA
ponkio_o
PRO
0
300
AWS認定を取る中で感じたこと
siromi
1
190
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
230
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
160
PO初心者が考えた ”POらしさ”
nb_rady
0
210
Featured
See All Featured
Making Projects Easy
brettharned
116
6.3k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Docker and Python
trallard
44
3.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
It's Worth the Effort
3n
185
28k
Unsuck your backbone
ammeep
671
58k
Adopting Sorbet at Scale
ufuk
77
9.5k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Visualization
eitanlees
146
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Transcript
AWS Step Functionsの新機能「Call third-party API」を試してみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • JAWS UG名古屋運営 • 三次元地図技術のスタートアップの エンジニア
@k_miura_io koki.miura05
AWS Step Functionsとは? • AWSのサービスを組み合わせて分散アプ リケーションを作ることができるサービス • GUIベースでAWSのサービス・API呼び出 すことができる •
並列処理やエラー処理も追加できる
Step Functionsの新機能 • Call third-party API • Bedrock API
Call third-party API それまでLambdaを使わないとできなかった外部API連携が Step Functionsだけで実現できる
試してみた
今回のシナリオ News APIで取得した国内のヘッドラインニュースを Slackに投稿&レスポンスをS3に保管するワークフロー
DEMO
SLACKの投稿
S3バケットの中身
ワークフロー Lambda一切使わず実装!
POINT • APIのリクエストにはEventBridgeを使って APIの認証情報を登録する必要がある • よくあるヘッダーにAPIトークンをいれるタ イプのAPIであれば認証タイプをAPIキー に設定してヘッダーに登録する情報を入 れればOK
外部API呼び 出すときに使 われている IAMポリシー • Call third-party APIのステップを追加したステートマ シンのIAMロールを生成するとそこで必要なAPIのエ ンドポイント、メソッドのアクセスを許可するための
IAMポリシーが追加される • 何も知らずにあとから別のAPIを追加して実行する とアクセスエラーが出るので要注意! • ステートマシンの設定画面からIAMロールを作り直せ ばOK
ステートマシンのテンプレ もある • StripeのAPIを使った請求書 作成ワークフローをStep Functionsで完結するテンプ レートがある • 割と複雑なビジネスロジック がローコードで構築されて
いるのでStep Functionsの ポテンシャルを感じる
まとめ • Step Functionsを使って外部APIと連携することができた • Lambdaを使わないサーバーレスなシステム開発の幅が広がる予感 • Step Functions側で作られているIAMロールでアクセス制限をかけているのでセ キュアな分、カスタムする際は要注意
超簡単なサンプル記事 https://bit.ly/3Rsoxxr
END