ナビゲーション

PHP

PHP で署名付き URL を使う

PHP SDK で署名付き URL を生成します。この URL は、開かれたときにテンプレートの画像をレンダリングします。

generateImageSignedUrl は、開かれたときに画像をレンダリングするリンクを作ります。ネットワークリクエストは送りません。SDK が、API キーを使ってサーバー上で URL に署名します。

リクエスト

#templateIdstringrequired

テンプレート ID。たとえば tpl_xxx です。

#modificationsarray

テンプレートのレイヤーに設定する値。URL に含まれて送られるため、短くしてください。各レイヤーが受け付けるフィールドは、Modifications にあります。

#formatstringdefault: png

画像の形式。png、jpeg、webp のいずれかです。それ以外の値を渡すと、メソッドは InvalidArgumentException を投げます。

#nocachebooldefault: false

キャッシュを使いません。リクエストのたびに新しい画像をレンダリングし、クォータに数えられます。

$url = $client->generateImageSignedUrl('tpl_xxx', [
    'modifications' => [
        ['name' => 'headline', 'text' => 'Hello, Ada'],
    ],
    'format' => 'jpeg',
]);

レスポンス

メソッドは文字列を返します。

https://api.bannerify.co/v1/templates/signedurl?apiKeyHashed=2f5a...&format=jpeg&modifications=%5B...%5D&templateId=tpl_xxx&sign=ce2d...

apiKeyHashed は、どのキーが URL に署名したかを Bannerify に伝えます。sign は、ほかのパラメーターを API キーで署名した HMAC-SHA256 です。署名付き URL のテンプレートや modifications は、署名を壊さずに変更することはできません。そのため、この URL をページ、メール、メタタグに入れても安全です。

echo '<img src="' . htmlspecialchars($url) . '" alt="Welcome banner">';

Bannerify は、レンダリングした画像を最長 7 日間キャッシュします。キャッシュ、クォータ、上限については、署名付き URLで説明しています。