คู่มือ

API จำนวนการเล่น Spotify: จำนวนสตรีมทั้งหมดของทุกเพลง ด้วย ID หรือ ISRC

Web API ของ Spotify ไม่เคยบอกว่าเพลงถูกเล่นไปกี่ครั้ง สิ่งที่ใกล้เคียงที่สุดคือ popularity ซึ่งเป็นคะแนน 0–100 ที่เอกสารของ Spotify เองอธิบายว่าอิงจากจำนวนการเล่นรวมเป็นหลัก และระบุว่าเลิกใช้แล้ว endpoint เหล่านี้ส่งคืนจำนวนนั้นโดยตรง: เพลงหนึ่งเพลงด้วย Spotify ID หรือ ISRC หรือสูงสุด 50 เพลงในการเรียกครั้งเดียว

โดย Eduardo Airaudo ผู้ดูแล API · อัปเดต 22 ตุลาคม 2569

สิ่งที่ออบเจกต์เพลงอย่างเป็นทางการไม่มี

GET /v1/tracks/{id} บน Spotify Web API ส่งคืนอัลบั้ม ศิลปิน duration_ms explicit external_ids ชื่อ popularity และฟิลด์อื่นอีกเล็กน้อย ไม่มีฟิลด์ใดนับจำนวนการเล่น Popularity ใกล้เคียงที่สุด: เอกสารของ Spotify ระบุว่าเป็นค่าตั้งแต่ 0 ถึง 100 คำนวณจากจำนวนครั้งที่เพลงถูกเล่นและความใหม่ของการเล่นเป็นหลัก และระบุว่าเลิกใช้แล้ว การเปลี่ยนแปลงเมื่อเดือนกุมภาพันธ์ 2026 ของ Spotify ได้นำฟิลด์นี้ออกจากแอปในโหมดพัฒนาที่สร้างตั้งแต่วันที่ 11 กุมภาพันธ์ 2026

คะแนนทำสิ่งที่ตัวเลขนับทำไม่ได้ เพราะเป็นค่าสัมพัทธ์ จึงรวมข้ามอัลบั้มหรือทั้งแคตตาล็อกไม่ได้ และให้น้ำหนักกับการเล่นล่าสุด — เอกสารเดียวกันระบุว่าเพลงที่ถูกเล่นมากในตอนนี้ได้คะแนนสูงกว่าเพลงที่เคยถูกเล่นมากในอดีต — จึงบอกไม่ได้ว่าเพลงหนึ่งเคยถูกเล่นไปทั้งหมดกี่ครั้ง

ตามคำอธิบายในสเปก กลุ่ม Partner ของ API นี้คือ “Spotify's internal (pathfinder) data, including play counts” /partner/track/count ส่งคืนจำนวนการเล่นทั้งหมดของเพลงหนึ่งเพลง /partner/tracks/count ส่งคืนของเพลงสูงสุด 50 เพลงพร้อมกัน และ /partner/track ใส่จำนวนนั้นไว้ในระเบียนเพลงแบบเต็ม

สิ่งที่ส่งกลับมา

ทีละฟิลด์ ตามที่สคีมาการตอบกลับของสเปกกำหนด การเรียกเพลงเดี่ยวตั้งชื่อจำนวนนี้ว่า streams ส่วนการเรียกแบบแบตช์ตั้งชื่อว่า playcount

เพลงเดียว

GET /partner/track/count

streams
จำนวนการเล่นทั้งหมด เป็นจำนวนเต็ม (int64) ในสเปกเป็น nullable และเป็น 0 สำหรับเพลงที่ถูกเล่นต่ำกว่า 1,000 ครั้ง
spotify_track_id
Spotify ID ของเพลง
isrc
ISRC ของเพลง ในสเปกเป็น nullable
result
success หรือ error พร้อม message สั้น ๆ ข้างกัน

แบตช์

GET /partner/tracks/count

tracks[]
หนึ่งรายการต่อหนึ่ง ID ที่ร้องขอ เรียงตามลำดับคำขอ
tracks[].playcount
จำนวนการเล่นทั้งหมด (int64, nullable) เป็น 0 สำหรับเพลงที่ต่ำกว่า 1,000
tracks[].status
ok, not_found หรือ error พร้อมข้อความ error เมื่อสถานะเป็น error
tracks[].name
ชื่อเพลง; null เมื่อไม่พบ
tracks[].artists[]
id และ name ของศิลปินแต่ละคน
tracks[].releaseDate
วันที่วางจำหน่ายของอัลบั้มที่เพลงนั้นอยู่: YYYY-MM-DD หรือความละเอียดที่หยาบกว่า
missing[]
ID ที่ร้องขอซึ่งสถานะไม่ใช่ ok

ค่า 0 หมายถึงต่ำกว่า 1,000 ไม่ใช่ไม่เคยถูกเล่น สเปกระบุว่า Spotify รายงาน 0 สำหรับเพลงที่ถูกเล่นน้อยกว่า 1,000 ครั้ง ดังนั้นให้เก็บ 0 เป็น “ต่ำกว่า 1,000” แทนที่จะเก็บเป็นจำนวน

ตัวอย่างที่บันทึกไว้ · บันทึกเมื่อ 2026-10-22

GET /partner/track/count

6 บรรทัด — เนื้อหาที่บันทึกไว้ทั้งหมด

ตัวอย่างที่บันทึกไว้ · บันทึกเมื่อ 2026-10-22

GET /partner/tracks/count

18 บรรทัด — เนื้อหาที่บันทึกไว้ทั้งหมด

เพลงเดียว หรือ 50 เพลงต่อการเรียก

  • GET /partner/track/countTrack play count

    Lifetime play count of one track, by Spotify id (spotify_track_id, or its alias id) or by isrc. Spotify reports 0 for tracks with fewer than 1,000 plays. Play counts are cached for 1 hour; for many tracks use /partner/tracks/count.

    พารามิเตอร์spotify_track_id, id, isrc, cache

  • GET /partner/tracks/countTrack play counts (batch)

    Lifetime play counts for up to 50 tracks in one call. Entries come back in request order with status ok, not_found or error; ids without a play count are also listed in missing. Each id is cached for 1 hour.

    พารามิเตอร์ids, cache

  • GET /partner/trackPartner track data

    Track with its play count (data.trackUnion.playcount), album, artists and content ratings. Add slim=1 to keep only {id, uri, profile.name, visuals.avatarImage} of each artist (the full payload embeds the first artist's discography and is ~100 KB).

    พารามิเตอร์id, slim, cache

/partner/tracks/count รับ ID คั่นด้วยจุลภาคสูงสุด 50 รายการ และตอบตามลำดับที่คุณส่ง ดังนั้น 50 เพลงใช้เพียงหนึ่งคำขอ แทนที่จะเป็น 50

ดึงจำนวนการเล่น

เพลงเดียว ด้วย Spotify ID

ID คือสตริง 22 ตัวอักษรที่อยู่หลัง /track/ ใน URL ของ Spotify ทุกแบบ หากต้องการค้นหาเพลงด้วย ISRC ให้ส่ง isrc= แทน id=

สูงสุด 50 เพลงในการเรียกครั้งเดียว

อ่าน status ของแต่ละรายการก่อนอ่านจำนวน รายการจะกลับมาตามลำดับของ ID รายการที่ไม่มีจำนวนการเล่นจะถูกระบุเป็น not_found หรือ error ในตำแหน่งของมัน และถูกแสดงซ้ำอีกครั้งใน missing

จำนวนการเล่นโดยไม่ต้องเขียนโค้ด

หากต้องการตัวเลขสำหรับสเปรดชีตมากกว่าโค้ดของคุณเอง Apify actor สองตัวจากผู้ดูแลคนเดียวกันส่งคืนตัวเลขเหล่านี้เป็น dataset การรันต้องมีบัญชี Apify และไม่ต้องใช้คีย์ API: คุณวางลิงก์แล้วดาวน์โหลด JSON หรือ CSV

  • Spotify Play Count Scraper (เปิดในแท็บใหม่)eduair94/spotify-play-count-scraper

    วางลิงก์ URI หรือ ID ของเพลง อัลบั้ม ศิลปิน หรือเพลย์ลิสต์ แล้วจะส่งคืนหนึ่งแถวต่อเพลงพร้อมจำนวนการเล่น — เพลงยอดนิยมหรือผลงานทั้งหมดของศิลปิน ทุกเพลงในอัลบั้มหรือเพลย์ลิสต์ — และหากต้องการ จะมีอีกหนึ่งแถวที่เป็นผู้ฟังรายเดือนของศิลปิน

  • Spotify Scraper (เปิดในแท็บใหม่)eduair94/spotify-scraper

    actor อเนกประสงค์: 61 หมวดหมู่ โดย 5 หมวดเป็นจำนวนการเล่น (track_play_count, album_play_counts, artist_play_counts, artist_discography_play_counts, playlist_play_counts) และ isrc ซึ่งค้นหาเพลงด้วย ISRC พร้อมจำนวนการเล่น

ทั้งสองคิดตามผลลัพธ์ ที่ราคาซึ่งระบุไว้เมื่อ : $0.001 ต่อแถวในแผนฟรีของ Apify ลดลงเหลือ $0.0006 ตั้งแต่แผน Gold ขึ้นไป เมื่อไรที่การรันคุ้มกว่าคีย์ และเมื่อไรที่ไม่คุ้ม ดูได้ที่ คู่มือ scraper

ประวัติที่เก็บไว้แล้ว: spotify-most-streamed-songs (opens in a new tab) on GitHub has daily play counts and daily streams for 1,000 of the most-streamed songs, as CSV and JSON history.

ใช้จากผู้ช่วย AI (MCP): ถาม Claude, Cursor หรือ VS Code เรื่องสตรีมของเพลง แล้วเครื่องมือ get_track_play_count ของ Spotify MCP server จะส่งคืนจำนวนการเล่นทั้งหมดจาก API นี้ ตั้งค่า MCP server

คำถาม

Spotify Web API ส่งคืนจำนวนการเล่นหรือไม่?

ไม่ ออบเจกต์เพลงในเอกสารอ้างอิงของ Web API ไม่มีฟิลด์จำนวนการเล่น ฟิลด์ที่ใกล้เคียงที่สุดคือ popularity ซึ่งเป็นคะแนน 0–100 ที่ Spotify คำนวณจากจำนวนการเล่นรวมและความใหม่ของการเล่นเป็นหลัก เอกสารระบุว่าเลิกใช้แล้ว และการเปลี่ยนแปลงเมื่อเดือนกุมภาพันธ์ 2026 ของ Spotify ได้นำฟิลด์นี้ออกจากแอปในโหมดพัฒนาที่สร้างตั้งแต่วันที่ 11 กุมภาพันธ์ 2026

ทำไมเพลงแสดงการเล่น 0 ครั้ง?

เพราะมีน้อยกว่า 1,000 ครั้ง สเปกระบุว่า Spotify รายงาน 0 สำหรับเพลงที่ถูกเล่นน้อยกว่า 1,000 ครั้ง ดังนั้น 0 หมายถึงต่ำกว่า 1,000 ไม่ใช่ไม่เคยถูกเล่น

ขอจำนวนการเล่นของหลายเพลงพร้อมกันได้ไหม?

ได้ GET /partner/tracks/count รับ ID เพลงคั่นด้วยจุลภาคสูงสุด 50 รายการ และตอบตามลำดับคำขอ แต่ละรายการมีสถานะเป็น ok, not_found หรือ error ID ที่ไม่มีจำนวนการเล่นจะถูกแสดงใน missing ด้วย 50 เพลงใช้เพียงหนึ่งคำขอ แทนที่จะเป็น 50

ค้นหาเพลงด้วย ISRC ได้ไหม?

ได้ GET /partner/track/count รับ isrc แทน Spotify ID ดังนั้นแคตตาล็อกที่ใช้ ISRC เป็นคีย์ไม่ต้องค้นหา ID ก่อน

ตัวเลขนี้เป็นข้อมูลล่าสุดแค่ไหน?

จำนวนการเล่นถูกแคชไว้หนึ่งชั่วโมง ตัวเลขจึงเก่าที่สุดประมาณนั้น ค่า X-Cache ที่ขึ้นต้นด้วย STALE หรือ FALLBACK หมายความว่าส่งสำเนาที่เก่ากว่ามาเพราะการดึงข้อมูลสดช้าหรือล้มเหลว X-Cache-Stale-Age บอกอายุของสำเนาเป็นวินาที เพิ่ม cache=false เพื่อดึงข้อมูลใหม่ ปุ่มรันบนเว็บไซต์นี้ผ่านแคชของเดโมเองด้วย ตัวเลขที่นั่นจึงอาจเก่ากว่า

ขอจำนวนการเล่นโดยไม่ต้องเขียนโค้ดได้ไหม?

ได้ บน Apify: การรันต้องมีบัญชี Apify และไม่ต้องใช้คีย์ API Spotify Play Count Scraper (eduair94/spotify-play-count-scraper) รับลิงก์เพลง อัลบั้ม ศิลปิน หรือเพลย์ลิสต์ และส่งคืนหนึ่งแถวต่อเพลงพร้อมจำนวนการเล่น ส่วน Spotify Scraper (eduair94/spotify-scraper) มีหมวดจำนวนการเล่น 5 หมวดจากทั้งหมด 61 หมวด ทั้งสองคิดตามผลลัพธ์

ต้องใช้แผนไหน?

แผนใดก็ได้ endpoint จำนวนการเล่นทั้งสองมีในทุกแผน ทั้ง RapidAPI และพอร์ทัลโดยตรง แผนต่างกันที่ปริมาณรายเดือน ทุกแผนของ RapidAPI อนุญาต 5 คำขอต่อวินาที และทุกคีย์โดยตรงรวม 10 แผนฟรีของ RapidAPI อนุญาต 1,000 คำขอต่อเดือน

แหล่งอ้างอิง

What changed in the API and on these pages, and when: What's new.

รับคีย์แล้วดึงจำนวนการเล่นแรกของคุณ

endpoint จำนวนการเล่นทั้งสองมีในทุกแผน ทั้ง RapidAPI และพอร์ทัลโดยตรง ส่วนบน Apify actor สองตัวข้างต้นส่งคืนตัวเลขเดียวกันเป็นแถวใน dataset คิดตามผลลัพธ์ แผนฟรีของ RapidAPI คือ 1,000 คำขอต่อเดือน: ที่สูงสุด 50 เพลงต่อการเรียก ได้สูงสุด 50,000 จำนวนการเล่น

ยังไม่พร้อมซื้อ? รับคีย์ทดลองใช้ฟรี: 500 คำขอใน 7 วัน ไม่ต้องใช้บัตร