Pexels

Pexels API 完全ガイド:取得方法・利用規約・実装サンプル

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
デザイン本が読み放題

Figma・UI/UX・配色の深いノウハウを

動画・記事の断片情報より、1冊の体系書籍のほうが圧倒的に速い。Kindle Unlimited対象のデザイン書籍が豊富です。

Kindle Unlimited 30日無料▶ Audible|デザイン発想本を耳で▶

▶ デザイン→エンジニアリングの橋渡しに興味があれば プログラミング / エンジニア転職 もどうぞ。


タイプ別にすぐ選べる

クリエイティブの引き出し、どう増やす?

Figma・UI/UX・配色・タイポグラフィ。"手を動かす"学びと"発想力を磨く"学びは、使うサブスクが違います。

▷ Figma・UI/UX・配色の具体テクニックを体系化したい実務デザイナー

Kindle Unlimited 30日無料|デザイン本読み放題▶

▷ ブランド・発想・ディレクション系のインプットを"耳で"増やしたい人

オーディオブックAudible

※無料期間中の解約で料金発生なし

▶ デザイン→エンジニアリングの橋渡しに興味があれば プログラミング / エンジニア転職 もどうぞ。


スポンサードリンク

Pexels API の概要と利用規約

結論:Pexels API は、無料で商用利用が可能な高品質画像・動画をプログラムから取得できる公式サービスです。
- ロゴの表示は UI(ページヘッダーやフッター等)に限り許可されていますが、アプリケーションのアイコンやブランドマークとしての使用は禁止されています。
- 画像・動画自体は「著作者表記不要(Attribution not required)」ですが、再配布や加工した素材を販売することは利用規約で禁じられています

ポイント:商用サイトにそのまま掲載しても問題ありませんが、二次的な販売目的での利用は必ず避けてください。


1. ロゴ使用とクレジット表記に関する詳細

項目 許可される範囲 禁止事項
ロゴ UI の一部(例:検索結果ページのヘッダー、フッター)として表示可能 アプリやサービスのアイコン・ブランドマークへの使用
クレジット表記 原則不要。ただし、画像の改変後に再配布する場合は必ず著作者情報を付与する必要あり 画像・動画そのものを販売したり、サブスクリプション等で提供すること

公式ガイドライン(Pexels のロゴ利用について)に沿って、ロゴは 白版/黒版 を推奨サイズで配置し、リンク先は Pexels 公式ページに設定してください。


2. API キー取得手順(2024 年時点)

  1. アカウント作成 / ログイン
  2. https://www.pexels.com/ja-jp/api/ にアクセスし、Sign up または Log in ボタンから無料アカウントを作成/ログインします。

  3. 開発者ページへ遷移

  4. 右上メニューの Developers → Your API Keys をクリック。

  5. キー生成

  6. Create a new key ボタンを押し、アプリ名と簡単な説明(例:MyProject)を入力して Generate を実行。

  7. 安全に保管

  8. 表示された文字列が API キーです。.env ファイルやクラウドシークレットマネージャに保存し、コードリポジトリへ直接埋め込まないよう徹底してください。

注意:API キーは ベアラートークン として Authorization: Bearer {YOUR_API_KEY} ヘッダーに必ず含めます。キーが漏洩した場合は即座に開発者ページから再生成し、古いキーを無効化してください。


3. 認証ヘッダーと主要エンドポイント

3‑1. 共通認証方式

  • ヘッダーは 全リクエスト に必須です。
  • Bearer の後にスペースを入れ、キー文字列だけを記載してください。

3‑2. 写真検索エンドポイント

項目 内容
URL https://api.pexels.com/v1/search
必須ヘッダー Authorization: Bearer {API_KEY}
主なクエリパラメータ query(必須)
per_page(最大 80、デフォルトは 15)
page(ページ番号)
orientation(landscape / portrait / square)
size(large / medium / small)
locale(例:ja-JP)

cURL の実行例

3‑3. 動画検索エンドポイント

項目 内容
URL https://api.pexels.com/videos/search
主なクエリパラメータ query(必須)
per_page(最大 80)
pagelocaleorientation(動画は基本的に横長が多い)

動画の最適品質取得例(Python)

ポイントwidth ≥ 1920(=1080p)かつ format = mp4 のものを優先すれば、ほとんどのモダンブラウザでスムーズに再生できます。


4. 実装サンプル(Node.js・Python)

以下は 認証 → 検索 → ダウンロード を最小コード量で実現した例です。エラーハンドリングやリトライロジックは別途追加してください。

4‑1. Node.js(fetch / native)

4‑2. Python(requests)

共通のベストプラクティス

項目 推奨内容
認証情報 環境変数・シークレットマネージャに保存し、コード中にハードコーディングしない。
エラーハンドリング raise_for_status()(Python)や if (!res.ok)(JS)で HTTP エラーを捕捉し、ロギング・再試行を実装。
タイムアウト設定 requests.get(..., timeout=10)fetch(..., {signal: AbortSignal.timeout(10000)}) を使用。
ディレクトリ構造 画像は images/, 動画は videos/ と分け、ファイル名は URL のベースネームで保存すると管理が楽です。

5. レートリミットとエラーハンドリングの実務的対策

5‑1. 現行レートリミット(2024 年 10 月時点)

項目 上限
リクエスト数 1 時間あたり 200 リクエスト(無料プラン)
同時接続数 明示的な制限はなし。ただし短時間に多数のリクエストを送ると 429 が返ります。

重要:Pexels の公式ドキュメントは随時更新されます。実装前に必ず最新情報(https://www.pexels.com/api/documentation/)をご確認ください。

5‑2. 429 エラーへの対処例(Python)

5‑3. リクエスト間隔の目安

  • 安全側の計算:200 件 / 3600 秒 ≈ 18 秒に 1 回 が理論上の最大許容頻度です。
  • 実務的な推奨12〜15 秒に 1 リクエスト 程度であれば、突発的なピーク時でも余裕があります。

キャッシュ活用:同一キーワード・ページ番号の結果は数分~数時間単位でキャッシュし、不要なリクエストを削減しましょう。


6. 商用利用時に留意すべきポイント

6‑1. ロゴガイドライン(再掲)

  • 表示位置:フッター・検索結果ヘッダー等、ユーザーが目にする UI の一部。
  • サイズ:ロゴの高さは 30px 以上、幅は自動調整 が望ましい。
  • カラー:公式が提供する白版/黒版を使用し、背景色とコントラストを確保。

6‑2. パフォーマンス最適化手法

手法 効果 実装ヒント
ブラウザキャッシュ 同一リソースの再取得回数削減(最大 30 日) Cache-Control: public, max-age=2592000 を CDN またはオリジンサーバで設定
サーバ側キャッシュ (Redis / Memcached) API 応答自体を保存し、同一クエリの二重呼び出しを防止 キー例:pexels:search:{query}:{page}
CDN 配信 地理的に近いエッジサーバから高速配信 画像・動画は S3 / Cloud Storage に保存後、CloudFront/Cloudflare へプッシュ
画像最適化 (WebP, AVIF) ファイルサイズを 30‑50% 削減 sharp(Node)や Pillow + webp(Python)で変換し、srcset を活用
動画ストリーミング 初回バッファ時間短縮・帯域削減 HLS/DASH 形式に変換できる場合は CloudFront の「Media Package」等を併用

6‑3. 法的リスクの最小化

  1. 利用規約の定期確認
  2. Pexels はサービス内容や制限を随時変更する可能性があります。プロジェクト開始前と major update 前に必ず公式ドキュメントをチェックしてください。

  3. 二次的販売の禁止徹底

  4. 「素材そのもの」や「加工後の素材」を有料で提供しないこと。例外として、画像を UI の一部として埋め込んだウェブページ全体を SaaS 形態で提供する場合は問題ありません(ただし、素材自体だけをダウンロード可能にしてはいけません)。

  5. プライバシー・肖像権

  6. 人物が写っている画像はモデルリリースが付与されていることが前提ですが、商用広告等で使用する際は必ず「人物の明示的な同意」や「適切なクレジット表記」が求められるケースがあります。疑問がある場合は Pexels のサポートへ問い合わせましょう。

7. よくある質問(FAQ)

質問 回答
API キーは何件まで作成できますか? 無料プランでも複数キーを発行可能です。プロジェクトごとにキーを分けると、アクセス解析やレートリミットの管理がしやすくなります。
画像のサイズ指定は必須ですか? 必須ではありません。size パラメータを省略するとデフォルトで large が返されます。ただし、帯域節約の観点から必要に応じて mediumsmall を選択してください。
動画はどの解像度が取得できますか? 720p(1280×720)〜 4K(3840×2160)まで、複数の video_files が同時に返されます。最適品質を自前で選択するロジックを実装してください(上記 Python サンプル参照)。
レートリミット超過時に自動的に待機させる仕組みはありますか? 現行の API には「バックオフ」機能はありません。クライアント側で 429 を検知した際に Retry-After ヘッダー(存在すれば)を参照し、待機時間を調整してください。
商用利用時にロゴのサイズや配置に制限がありますか? ロゴは UI の一部として「目立ち過ぎない」ことが求められます。具体的なピクセル数の規定はありませんが、ページ全体のデザインバランスを考慮し、推奨サイズは 30‑50px 高さ程度です。

8. まとめ(要点)

  1. Pexels API は無料で商用利用可能な画像・動画取得手段。ロゴは UI に限定して表示可、アプリアイコンへの使用は禁止。
  2. API キーは開発者ページから即時取得し、.env 等に安全保管するのがベストプラクティス。
  3. すべてのリクエストは Authorization: Bearer {API_KEY} ヘッダーを必ず付与。写真検索は /v1/search、動画検索は /videos/search を利用。
  4. レートリミットは 1 時間あたり 200 リクエスト(無料プラン)。429 エラーは指数バックオフで再試行し、12‑15 秒以上の間隔を目安にすると安全です。
  5. サンプルコード(Node.js・Python) を参考にすれば、認証・検索・ダウンロードまで数十行で完結できる。実装時はタイムアウト設定とエラーハンドリングを必ず追加してください。
  6. 商用サイトでは ロゴ使用規定を遵守しつつ、ブラウザキャッシュ、サーバ側キャッシュ、CDN 配信、画像・動画の最適化(WebP/AVIF、HLS)でパフォーマンス向上を図りましょう。
  7. 利用規約は随時変更される可能性があるため、開発開始前と大幅な機能追加前に公式ドキュメントを再確認する習慣をつけてください。

これらの手順とベストプラクティスに従うことで、Pexels API を自社サービスやクリエイティブプロジェクトへ安全・効率的に組み込むことができます。 Happy coding!

スポンサードリンク

お得なお知らせ

スポンサードリンク
デザイン本が読み放題

Figma・UI/UX・配色の深いノウハウを

動画・記事の断片情報より、1冊の体系書籍のほうが圧倒的に速い。Kindle Unlimited対象のデザイン書籍が豊富です。

Kindle Unlimited 30日無料▶ Audible|デザイン発想本を耳で▶

▶ デザイン→エンジニアリングの橋渡しに興味があれば プログラミング / エンジニア転職 もどうぞ。


タイプ別にすぐ選べる

クリエイティブの引き出し、どう増やす?

Figma・UI/UX・配色・タイポグラフィ。"手を動かす"学びと"発想力を磨く"学びは、使うサブスクが違います。

▷ Figma・UI/UX・配色の具体テクニックを体系化したい実務デザイナー

Kindle Unlimited 30日無料|デザイン本読み放題▶

▷ ブランド・発想・ディレクション系のインプットを"耳で"増やしたい人

オーディオブックAudible

※無料期間中の解約で料金発生なし

▶ デザイン→エンジニアリングの橋渡しに興味があれば プログラミング / エンジニア転職 もどうぞ。


-Pexels