クイックスタート
初めてSlidePackを利用する方向けに、HTTP APIでのレンダリングの手順をガイドします。
SlidePack APIを利用するにはAPIトークンが必要です。 まだお持ちでない方はダッシュボードに登録・ログインし、作成してください。
1. テンプレートとデータを準備する
SlidePackのへ入力として、以下の2つが入ったzipファイルを用意します。
-
template.pptx
- テンプレートとなるパワーポイントファイル。置き換えたい部分にプレースホルダを書いておきます。 -
data.json
- テンプレートに流し込むデータ。上のテンプレートに合わせた例はこのようになります。{ "slides": [ { "template": 1, "title": "Hello, World!" } ] }
これらをzipファイルにまとめておきます。
レンダリング例 から一つダウンロードしてお試しいただくこともできます。
2. セッションを作成する
APIリクエストによりSessionを作成します。一つのSessionは一回のレンダリングに関するパラメータや結果の集まりです。
Session作成リクエスト
curl -X POST "https://slidepack.io/sessions" \
-H 'Authorization: Bearer {API_TOKEN}'
POST /sessionsからのレスポンスの例
{
"session": {
"uuid": "f0155f9f-d3f3-4fa9-9f8d-70f8fd2f9c36",
"created_at": "2020-08-13T13:14:32.000000Z",
"rendered_at": null,
"render_succeeded": null,
"render_slide_count": null,
"render_message": null
},
"upload": {
"action": "https://slidepack-api.s3.ap-northeast-1.amazonaws.com",
"method": "POST",
"enctype": "multipart/form-data",
"params": {
"acl": "private",
"key": "sessions/zip/f0155f9f-d3f3-4fa9-9f8d-70f8fd2f9c36.zip",
"Content-Type": "application/zip",
"X-Amz-Security-Token": "***",
"X-Amz-Credential": "***",
"X-Amz-Algorithm": "AWS4-HMAC-SHA256",
"X-Amz-Date": "20200813T131432Z",
"Policy": "***",
"X-Amz-Signature": "***"
}
}
}
このレスポンス内容には、次のステップでファイルをアップロードするのに必要なデータが含まれています。
3. zipファイルをアップロードする
SlidePackのプライベートS3バケットに直接、入力zipファイルをPOSTします。
先程の POST /sessions
からのレスポンス値を使って、次のようにPOSTリクエストを構築します。
- 方式は
multipart/form-data
です。 - POST URL は
upload.action
です。 upload.params
の全ての値をフォーム値として入れます。- 末尾に
file
フィールドを追加し、アップロードしたいファイルを指定します。
ファイルアップロードリクエストの例
curl -X POST "https://slidepack-api.s3.ap-northeast-1.amazonaws.com/" \
-F "acl=private" \
-F "key=sessions/zip/{uuid}.zip" \
-F "Content-Type=application/zip" \
-F "X-Amz-Security-Token=***" \
-F "X-Amz-Credential=***" \
-F "X-Amz-Algorithm=AWS4-HMAC-SHA256" \
-F "X-Amz-Date=***" \
-F "Policy=***" \
-F "X-Amz-Signature=***" \
-F "file=@/path/to/your/data.zip"
アップロードが成功すると 204 No Content
レスポンスが返ります。
4. レンダリングを行い、結果をダウンロードする
POST /render
で実際のレンダリングをリクエストします。
レンダリングリクエストの例
curl -X POST "https://slidepack.io/sessions/{uuid}/render" \
-H 'Authorization: Bearer {API_TOKEN}'
レンダリングリクエストのレスポンス例
{
"session": {
"uuid": "f0155f9f-d3f3-4fa9-9f8d-70f8fd2f9c36",
"created_at": "2020-08-13T13:14:32.000000Z",
"rendered_at": "2020-08-13T13:16:18.000000Z",
"render_succeeded": true,
"render_slide_count": 5,
"render_message": null
},
"download_url": "https://slidepack-api.s3.ap-northeast-1.amazonaws.com/..."
}
download_url
にアクセスすることでレンダリングされたpptxファイルをダウンロードできます。
curl "https://slidepack-api.s3.ap-northeast-1.amazonaws.com/..." -o output.pptx
上記の例の入力でレンダリングした場合、このようになります。