SpotifyポッドキャストAPI
APIの稼働状況
- 24時間の稼働状況
- 正常
- 24時間の平均応答時間
- —
- 良好/正常
- 利用可能
- 制限あり
- ほぼ停止
過去24時間
過去30日間
キーワードでSpotifyのポッドキャスト番組や個別エピソードを検索します。該当する場合は、配信者、エピソード数、再生時間、リリース日を取得できます。エピソードを検索するには、content_typeをpodcast_episodes_individual_episodesに設定してください。各行の種別で番組とエピソードを区別できます。音声はダウンロードされません。
料金は1,000リクエストあたり$1.39(1回あたり$0.001389)です。失敗した呼び出しと空の結果には課金されません。 同期処理です。時間のかかるジョブでは、ボディに"mode": "async"を追加し、job_idを取得してポーリングしてください。
AIプロンプト
EveryInfraのSpotify ポッドキャストエンドポイント(spotify/podcast)を使ったデータ収集スクリプトの作成を手伝ってください。
エンドポイントの仕組み:
- リクエスト:ヘッダーにAuthorization: Bearer <API key>を指定して、https://api.everyinfra.com/api/v1/socialにPOSTします。APIキーは環境変数EVERYINFRA_API_KEYから読み込み、ハードコードしないでください。
- リクエストボディでplatformにspotify、actionにpodcastを指定し、パラメータはparamsの中に入れます。
- 必須パラメータ:
- keyword: searchアクションの検索クエリを指定します。対象のエンティティはcontent_typeで絞り込まれます。podcastアクションでは、特定のエピソードの詳細ではなく、デフォルトでポッドキャスト番組全体を検索します。
- 任意パラメータ:
- content_type: 対象となるカタログの種類で絞り込みます。searchで指定できる値はtracks、artists、albums、playlistsです。podcastアクションでは独自の値を使用し、番組の場合はpodcasts_shows(デフォルト)、個別のエピソードの場合はpodcast_episodes_individual_episodesを指定します。一方のアクションの値をもう一方で使用することはできません。(指定可能な値:podcast_episodes_individual_episodes / podcasts_shows)
- limit: この呼び出しで返す最大行数で、1〜100の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。(デフォルト:20)
- レコードのリストを返します。各レコードの主なフィールド: id、url、type、name、text、artists、album_name、owner_name、publisher、image_url、duration_ms、play_count。フィールドは全部で20個です。一覧はhttps://api.everyinfra.com/api/v1/social/catalog?platform=spotifyを参照してください。.
- リクエストボディの例:
{
"platform": "spotify",
"action": "podcast",
"params": {
"keyword": "true crime"
}
}
- 料金:1,000リクエストあたり$1.39。失敗時および結果が空の場合は課金されません。
- 対象が数十〜数百件ある場合は、ボディに"mode": "async"を追加します。すぐにjob_idが返されるので、GET https://api.everyinfra.com/api/v1/jobs/{job_id}をポーリングして結果を取得します。
- 422の場合は、エラーに含まれる推奨パラメータ名と指定可能な値を使ってリクエストを修正します。429または503の場合は、Retry-Afterの指定に従って待ってから再試行します。
コードを書く前に、必要な対象とその件数、必要なフィールド、希望する出力形式を私に質問してください。そのうえで、計画と概算費用を私に確認してください。リクエストパラメータ
| 名前 | 場所 | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|---|
Authorization | header | string | はい | - | Bearerの後にAPIキーを続けます。APIキーはコンソールで作成してください。URLやコードリポジトリには絶対に含めないでください。 |
platform | body | string | はい | spotify | プラットフォームの識別子です。値は固定です。 |
action | body | string | はい | podcast | 機能の識別子です。値は固定です。 |
keyword | body.params | string | はい | - | searchアクションの検索クエリを指定します。対象のエンティティはcontent_typeで絞り込まれます。podcastアクションでは、特定のエピソードの詳細ではなく、デフォルトでポッドキャスト番組全体を検索します。 |
content_type | body.params | string (enum) | いいえ | - | 対象となるカタログの種類で絞り込みます。searchで指定できる値はtracks、artists、albums、playlistsです。podcastアクションでは独自の値を使用し、番組の場合はpodcasts_shows(デフォルト)、個別のエピソードの場合はpodcast_episodes_individual_episodesを指定します。一方のアクションの値をもう一方で使用することはできません。指定可能な値podcast_episodes_individual_episodespodcasts_shows |
limit | body.params | integer (1–100) | いいえ | 20 | この呼び出しで返す最大行数で、1〜100の整数で指定します。省略するとデフォルト値が適用されます。また、返される行数がこれより少なくなる場合があります。最大値を超える値を指定すると、課金前に422が返されます。 |
コードサンプル
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "spotify",
"action": "podcast",
"params": {
"keyword": "true crime"
}
}'OpenAPI定義(JSON)サンプルは環境変数EVERYINFRA_API_KEYからAPIキーを読み込みます。コピーしたコードにAPIキーが含まれることはありません。
レスポンス例
September 26, 2026 at 08:56(UTC)に、上のコードサンプルのパラメータでこのAPIを呼び出して取得しました。resultsとcountはその呼び出しの実際のレスポンスから個人情報(名前、ハンドル、アバター、プロフィールリンク、連絡先)を削除したものです。リストは先頭の2件のみ掲載しています。id、billing、quotaは呼び出しごとに異なるため、構造のみを示しています。
{
"id": "req_…",
"platform": "spotify",
"action": "podcast",
"results": [
{
"id": "5YNYcVmxKGsd8Q73mssWT9",
"url": "https://open.spotify.com/show/5YNYcVmxKGsd8Q73mssWT9",
"type": "show",
"name": "Canadian True Crime",
"text": "From the snowy streets of small-town Canada to the darkest corners of the big cities, join Aussie-Canadian host Kristi Lee for an immersive deep dive into the nation's most compelling crimes.With meticulous research and a trauma-informed approach, Kristi takes you beyond the head…",
"image_url": "https://i.scdn.co/image/ab6765630000ba8a42c23d101ed9e52c6592c869",
"episode_count": 240,
"rank": 1,
"platform": "spotify"
},
{
"id": "3DgfoleqaW61T2amZQKINx",
"url": "https://open.spotify.com/show/3DgfoleqaW61T2amZQKINx",
"type": "show",
"name": "Crime Junkie",
"text": "Does hearing about a true crime case always leave you scouring the internet for the truth behind the story? Dive into your next mystery with Crime Junkie. Every Monday, join your host Ashley Flowers as she unravels all the details of infamous and underreported true crime cases wi…",
"image_url": "https://i.scdn.co/image/ab6765630000ba8abe2cc3efd92b817b54d9bcb2",
"episode_count": 530,
"rank": 2,
"platform": "spotify"
}
],
"count": 20,
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}レスポンスフィールド
業務データはresultsに含まれます。この表はレコードに含まれうるフィールドの一覧です。プラットフォームに表示されない値を作り出すことはありません。
| フィールド | 意味 |
|---|---|
id | プラットフォーム上でのレコードの一意なIDです。一意性は1つのプラットフォーム内に限られ、プラットフォームが異なるとIDが重複する場合があります。 |
url | プラットフォーム上のレコードへのリンクです。 |
type | レコードの種類です。値は機能によって異なります(例:video / image / text)。 |
name | 対象そのものの名前です(アカウント・商品・ビジネス系の機能で使用)。 |
text | HTMLを除去した本文です。省略されることなく全文が返されます(一部のプラットフォームでは一覧結果自体に抜粋しか含まれません。その場合は各プラットフォームのフィールドの注記に記載しています)。 |
artists | プラットフォーム上の意味のまま |
album_name | プラットフォーム上の意味のまま |
owner_name | プラットフォーム上の意味のまま |
publisher | プラットフォーム上の意味のまま |
image_url | 画像のリンクです。複数の画像を返す機能では、image_urls配列が返される場合があります。 |
duration_ms | プラットフォーム上の意味のまま |
play_count | プラットフォーム上の意味のまま |
follower_count | フォロワー数です。nullは0ではなく、非公開であることを示します。 |
monthly_listener_count | プラットフォーム上の意味のまま |
track_count | プラットフォーム上の意味のまま |
episode_count | プラットフォーム上の意味のまま |
release_date | プラットフォーム上の意味のまま |
is_explicit | プラットフォーム上の意味のまま |
preview_url | プラットフォーム上の意味のまま |
rank | プラットフォーム上の意味のまま |
platform | 取得元プラットフォームの識別子で、リクエストのplatformと同じです(例:xiaohongshu、tiktok)。 |
エラーと課金
- 401
- キーが未指定か無効です。
- 402
- 残高が不足しています。先にチャージしてください。
- 422
- パラメータ名または値が無効です。エラーに含まれる候補を参考に修正してください。課金はされません。
- 429
- 1分あたりのリクエスト上限に達しました。Retry-Afterの指定に従って待ってから再試行してください。
- 503
- 処理を完了できませんでした。保留中の請求額は残高に戻されます。結果が不明な場合は、再試行する前に確認してください。
- 200(空)
- データがありません。課金はされません。
公式リファレンス
対象と用語の確認にのみ使用しています。プラットフォームによるEveryInfraの承認や推奨を意味するものではありません。
- Spotify:ポッドキャスト番組とエピソードオブジェクトの違い ↗
Spotifyの公式ドキュメントでは、エピソードを親となる番組ページの下に整理し、番組のフォローとエピソードの保存を区別しています。この構造に関する参考情報はリソースの階層を説明するものにすぎず、音声の再生、オフラインダウンロード、有料サブスクリプションへのアクセスといったSpotifyアプリの機能を再現するものではありません。
確認日:2026-09-04