Soundza
ทางการเอฟเฟกต์เสียง เพลง และบรรยากาศฟรีสำหรับเกม วิดีโอ และแอปพลิเคชัน ค้นหาตามอารมณ์ จังหวะ คีย์ หรือการใช้งาน ฟังตัวอย่างและดาวน์โหลดไฟล์คุณภาพเต็ม แต่ละไฟล์มีฟิลด์เมตาดาต้า 35 ฟิลด์
คุณทำอะไรได้บ้างด้วย Soundza MCP?
-
ค้นหาเสียง — ขอให้ผู้ช่วยของคุณค้นหาผลเสียง เพลง หรือบรรยากาศด้วย
search_soundsพร้อมตัวกรอง เช่น ประเภท อารมณ์ BPM หรือระยะเวลา -
ดูรายละเอียดเสียง — ดึงข้อมูลเมตาดาต้าทั้งหมดของเสียงเฉพาะ รวมถึงไฟล์ตัวอย่าง ข้อมูลใบอนุญาต และ URL สำหรับดาวน์โหลด ผ่าน
get_sound -
สำรวจชุดเสียง — เรียกดูคอลเลกชันเสียงที่คัดสรรมาแล้วด้วย
search_packsหรือดูเสียงทั้งหมดภายในชุดเฉพาะโดยใช้get_pack -
ดาวน์โหลดเสียงคุณภาพเต็ม — รับคำสั่ง
curlที่พร้อมใช้งานและลิงก์ดาวน์โหลดที่ใช้งานได้ 15 นาที สำหรับไฟล์ WAV คุณภาพเต็มของเสียง ผ่านdownload_sound -
ทดลองฟังด้วยตัวอย่าง — ฟังตัวอย่าง MP3 128 kbps โดยตรงจาก CDN โดยไม่ใช้เครดิต API ก่อนตัดสินใจดาวน์โหลด
เซิร์ฟเวอร์ MCP แบบโฮสต์
npx add-mcp 'https://mcp.soundza.com/mcp/oauth'ติดตั้งลง Claude Code, Codex, Cursor และอื่นๆ
เอกสาร
วิธีเชื่อมต่อ
ใช้ soundza จากผู้ช่วย AI หรือจากโค้ดของคุณเอง ทั้งสองวิธีฟรีและได้เสียงเดียวกัน
ในผู้ช่วย AI
ใน Claude, ChatGPT, Claude Code หรือแอป MCP ใดๆ เพิ่มเซิร์ฟเวอร์ MCP ของ soundza และลงชื่อเข้าครั้งเดียวด้วยบัญชีฟรี ขั้นตอนสำหรับแต่ละแอปอยู่ด้านล่าง
ในโค้ดของคุณเอง
ในแอป เกม สคริปต์ และเครื่องมือสร้าง เรียก REST API ด้วยคีย์ API ฟรี รับคีย์
REST
MCP, การลงชื่อเข้า
https://mcp.soundza.com/mcp/oauth
MCP, คีย์ API
OpenAPI
สำหรับเอเจนต์
เซิร์ฟเวอร์ MCP มีห้าเครื่องมือ: search_sounds, get_sound, search_packs, get_pack และ download_sound ซึ่งส่งคืนลิงก์ที่ใช้งานได้ 15 นาที คำสั่ง curl ที่พร้อมใช้ และหน้าของเสียงนั้น
Claude
- คลิก Add to Claude Claude จะเปิดขึ้นโดยมีชื่อและ URL กรอกไว้แล้ว คลิก Add
- ลงชื่อเข้า soundza และอนุมัติ บัญชีฟรีก็เพียงพอแล้ว
- ในแชท คลิก + เปิด Connectors และเปิด Soundza
Add to Claude หรือเพิ่มคอนเนกเตอร์แบบกำหนดเองด้วย https://mcp.soundza.com/mcp/oauth
ChatGPT
- เปิด ChatGPT plugins และเพิ่มเซิร์ฟเวอร์ MCP แบบกำหนดเอง ตั้งชื่อว่า Soundza และคง OAuth ไว้
- วาง URL ด้านล่าง จากนั้นลงชื่อเข้า soundza
- ในแชทใหม่ เลือก Soundza จากเมนูเครื่องมือ
URL https://mcp.soundza.com/mcp/oauth
เซิร์ฟเวอร์แบบกำหนดเองขึ้นอยู่กับแผน ChatGPT ของคุณ บางแผนต้องเปิดโหมด Developer ในการตั้งค่า
Claude Code
เพิ่มมัน จากนั้นรัน /mcp เลือก soundza และลงชื่อเข้าในเบราว์เซอร์
claude mcp add --transport http soundza https://mcp.soundza.com/mcp/oauth
อยากใช้คีย์แทนหรือไม่ ตั้งค่า SOUNDZA_API_KEY และเพิ่ม https://mcp.soundza.com/mcp ด้วยส่วนหัว Authorization หน้าคีย์ แสดงคำสั่งนี้พร้อมคีย์ของคุณที่กรอกไว้แล้ว:
claude mcp add --transport http soundza https://mcp.soundza.com/mcp --header "Authorization: Bearer $SOUNDZA_API_KEY"
Codex, Cursor และเอเจนต์อื่นๆ
ไคลเอนต์ใดก็ตามที่รองรับ streamable HTTP ใช้ https://mcp.soundza.com/mcp/oauth หากรองรับการลงชื่อเข้า มิฉะนั้นใช้ https://mcp.soundza.com/mcp ด้วยส่วนหัว Authorization สำหรับ Cursor เพิ่มสิ่งนี้ใน ~/.cursor/mcp.json; มันอ่านคีย์จากสภาพแวดล้อมของคุณ ดังนั้นคีย์จะไม่อยู่ในไฟล์ที่คุณอาจคอมมิต
{
"mcpServers": {
"soundza": {
"url": "https://mcp.soundza.com/mcp",
"headers": { "Authorization": "Bearer ${env:SOUNDZA_API_KEY}" }
}
}
}
รับคีย์ API
ใช้คีย์ในโค้ดของคุณเอง ส่งเป็น Authorization: Bearer <key> คีย์เริ่มต้นด้วย sz_live_ เก็บไว้บนเซิร์ฟเวอร์ของคุณหรือใน .env ที่อยู่ใน gitignore ไม่ใช่ในโค้ดไคลเอนต์
สร้างด้วยตัวเอง
ลงชื่อเข้าและสร้างคีย์บน หน้าคีย์ จะแสดงครั้งเดียว พร้อมคำสั่ง MCP ที่กรอกไว้แล้ว
หรือให้เอเจนต์ของคุณลงชื่อเข้า
ขอให้เอเจนต์เขียนโค้ดของคุณค้นหาเสียงบน soundza.com มันอ่าน llms.txt ส่งลิงก์หนึ่งลิงก์ให้คุณอนุมัติ และบันทึกคีย์เอง
Soundza is free, but every call needs an API key tied to a person's account. Get one with a one-click sign-in:
1. Start the sign-in. Include what the person is building, if you know it from the project: project_kind (one of game, video_tool, own_content, app, agent, music, trying, other) and project, one plain line about it. After approving, the person sees both and can change them; leave out anything you'd have to guess.
curl -s -X POST https://api.soundza.com/v1/auth/device -H "content-type: application/json" -d '{"client_name":"<your tool> on <this machine>","project_kind":"game","project":"<one line, e.g. A retro sci-fi shooter in Godot>"}'
It returns device_code, user_code, verification_uri_complete, expires_in (600 seconds) and interval (5 seconds).
2. Tell the human: "Open <verification_uri_complete> and approve code <user_code> (sign in with Google if it asks)." Nothing else is needed from them.
3. Right after telling them, poll every <interval> seconds until they approve. Run the polling loop in the foreground and wait for it; don't end your turn while the sign-in is pending (the code lasts 10 minutes).
curl -s -X POST https://api.soundza.com/v1/auth/token -H "content-type: application/json" -d '{"device_code":"<device_code>"}'
While it returns {"error":"authorization_pending"} keep polling; on "slow_down" wait the "interval" it returns. On approval it returns {"access_token":"sz_live_...","token_type":"Bearer",...} once: access_token is the API key. "expired_token" or "access_denied" means stop (start again only if the human asks).
4. Save the key as SOUNDZA_API_KEY in the project's .env and make sure .env is in .gitignore. Never commit the key or put it in a project-scope .mcp.json.
5. Optional: connect this MCP server with the key. The command reads $SOUNDZA_API_KEY from the shell, so load .env first (set -a; . ./.env; set +a). It stores the key in Claude Code's own settings (local scope), not in the project. If soundza is already added without a key, run "claude mcp remove soundza" first.
claude mcp add --transport http soundza https://mcp.soundza.com/mcp --header "Authorization: Bearer $SOUNDZA_API_KEY"
The tools load in the next session (or after /mcp). Until then, and in any tool that can't add MCP servers, use the REST API at https://api.soundza.com/v1 with the header "Authorization: Bearer $SOUNDZA_API_KEY". It does everything the MCP tools do.
A person can also create a key at https://soundza.com/developers/keys and set it the same way.
เริ่มต้นอย่างรวดเร็ว
ค้นหา จากนั้นดาวน์โหลดสิ่งที่คุณใช้ ตั้งค่า SOUNDZA_API_KEY ก่อน
curl -s "https://api.soundza.com/v1/sounds/search?type=sound_effect&q=whoosh&per_page=5" \
-H "Authorization: Bearer $SOUNDZA_API_KEY"
# download_url redirects to the file: -L follows it, -OJ saves it under its own name
curl -LOJ "https://api.soundza.com/v1/sounds/SOUND_ID/file" \
-H "Authorization: Bearer $SOUNDZA_API_KEY"
แต่ละผลลัพธ์มี preview_files, MP3 128 kbps ที่เล่นตรงจาก CDN ของเราโดยไม่ต้องใช้คีย์ และ download_url สำหรับไฟล์คุณภาพเต็ม
เอนด์พอยต์
ทุกเอนด์พอยต์เป็นคำขอ GET ภายใต้ https://api.soundza.com/v1 สเปกเต็มอยู่ที่ /openapi.json
| เอนด์พอยต์ | ฟังก์ชัน |
|---|---|
GET /sounds/search | ค้นหาด้วยคำและตัวกรอง ส่งคืนหน้าของเสียงและ search_id |
GET /sounds/{id} | เสียงหนึ่งเสียง ตาม id |
GET /sounds/{id}/file | ไฟล์คุณภาพเต็ม ปกติเป็น WAV ปรับระดับให้ตรงกับแคตตาล็อก;?variant=original สำหรับต้นฉบับที่ไม่ถูกแก้ไข การเปลี่ยนเส้นทาง 302 ไปยังลิงก์ที่ใช้งานได้ 5 นาที มี search_id และ user เป็นตัวเลือก |
GET /packs | แพ็กสาธารณะ เรียงตามความเกี่ยวข้องก่อน มี q, page และ per_page เป็นตัวเลือก |
GET /packs/{id} | หนึ่งแพ็ก จากนั้นหน้าของเสียงในแพ็ก ทุกเสียงระบุชื่อแพ็กของมัน |
GET /removals?since= | เสียงที่ถูกลบตั้งแต่วันที่ ISO ที่กำหนด สำหรับผู้ที่เก็บไฟล์ |
พารามิเตอร์การค้นหา
ให้ q, ตัวกรองอย่างน้อยหนึ่งตัว หรือทั้งสองอย่าง ระยะเวลาเป็นวินาที
| พารามิเตอร์ | ชนิด | คำอธิบาย |
|---|---|---|
q | string | คำที่ต้องการจับคู่ เช่น "door slam" หรือ "lofi drum loop" การพิมพ์ผิดได้รับการให้อภัย |
type | string | เสียงคืออะไร: music, sound_effect หรือ ambience (ดู Type and facts) ไม่คำนึงถึงตัวพิมพ์เล็กใหญ่ การค้นหาด้วย q ที่ไม่พบอะไรในประเภทของมัน จะค้นหาทุกประเภท และระบุใน relaxed_filters |
form | string | เฉพาะเพลง: track, excerpt, loop, one_shot หรือ stem |
parts | string | เฉพาะเพลง: full_mix หรือ single_part หากไม่ระบุ type=music จะจัดอันดับ full mixes ก่อน จากนั้น loops แล้ว single parts |
vocals | string | เฉพาะเพลง: none, backing หรือ lead |
style | string | เฉพาะเสียงประกอบ: retro หรือ cartoon ตั้งค่าต่อแพ็ก ดังนั้นเสียงส่วนใหญ่ไม่มี; หากค้นหาด้วย q ที่ไม่พบอะไรกับมัน จะถูกตัดออกและระบุใน relaxed_filters |
min_duration | number | ความยาวสั้นที่สุด ในวินาที |
max_duration | number | ความยาวยาวที่สุด ในวินาที |
min_bpm | number | จังหวะช้าที่สุด เฉพาะเพลงที่มีจังหวะ |
max_bpm | number | จังหวะเร็วที่สุด |
key | string | คีย์ดนตรี เช่น "C", "F# minor" หรือ "Bbm" จับคู่เฉพาะคีย์ที่เสียงแสดง: ระบุโดยแหล่งที่มาหรือบุคคล หรือตรวจจับด้วยความมั่นใจสูง |
chord | string | คอร์ดที่ chord one-shot เล่น เช่น "Am", "C#m7" หรือ "Fmaj7" |
note | string | โน้ตที่ pitched one-shot เล่น: "D3" สำหรับอ็อกเทฟนั้น (C3 คือ middle C) หรือ "D" สำหรับอ็อกเทฟใดๆ |
mood | list | คำอารมณ์คั่นด้วยเครื่องหมายจุลภาค; เสียงที่ตรงกับคำใดๆ จะถูกส่งคืน และการตรงมากกว่าจะจัดอันดับสูงกว่า หนึ่งใน: airy, heavy, metallic, bright, dark, punchy, soft, warm, glitchy, organic, cinematic, cartoony, retro |
good_for | list | งานที่เสียงควรเหมาะกับ คั่นด้วยเครื่องหมายจุลภาค จัดอันดับเท่านั้น: เสียงที่ตรงจะจัดอันดับสูงกว่า และไม่มีอะไรถูกกรองออก หนึ่งใน: transition, reveal, build_up, impact_on_beat, title_or_logo, notification, ui_click, menu, game_pickup, game_hit, game_power_up, footsteps, background_bed, intro, outro |
fit_seconds | number | ความยาวที่เสียงต้องเติม เช่น 20 สำหรับโฆษณา 20 วินาที จัดอันดับเสียงที่เติมได้ (แทร็กที่ยาวอย่างน้อยเท่านั้น หรือ loop ที่ไร้รอยต่อ) และเพิ่มคำแนะนำความพอดีในแต่ละผลลัพธ์ ไม่กรองอะไรออก |
pack | string | id หรือ slug ของแพ็ก: เฉพาะเสียงในแพ็กนั้น |
loop_seamless | boolean | true: เฉพาะเสียงที่ loop ไร้รอยต่อ วัดจากเสียง (ตอนจบวิ่งกลับไปยังตอนเริ่มต้นโดยไม่มีเสียงกระตุกหรือกระโดด) สำหรับเพลงเกมและ ambience beds ที่เล่นซ้ำใต้ฉาก |
category | string | หมวดหมู่ระดับบนของ Universal Category System ("CROWDS") หรือ CatID ("CRWDCheer") เสียงประกอบและ ambience |
page | integer | หมายเลขหน้า เริ่มจาก 1 |
per_page | integer | ผลลัพธ์ต่อหน้า: ค่าเริ่มต้น 15 สูงสุด 50 ผลลัพธ์หยุดที่ 500 ต่อคำค้นหา |
การตอบสนอง
หน้าของผลลัพธ์ พร้อมลิงก์ไปยังหน้าถัดไป bpm และ key อธิบายเพลง; creator เป็น null เมื่อเสียงไม่มีผู้สร้างสาธารณะ
ไฟล์ถูกปรับระดับให้ตรงกัน ดังนั้นเสียงจึงอยู่ร่วมกันได้โดยไม่ต้องปรับแต่ละเสียง: เกนหนึ่งค่าต่อเสียง ไม่มีการบีบอัด จุดสูงสุดที่หรือต่ำกว่า −1 dBTP Ambience ตั้งเป้า −20 LUFS, เพลง แพด และ loop ยาว −16, อย่างอื่น −13 ที่ดังที่สุด 400 ms lufs, true_peak_db และ loudness อธิบายต้นฉบับ; gain_db คือสิ่งที่ไฟล์ค่าเริ่มต้นเพิ่มเข้าไป เพิ่ม ?variant=original ในเส้นทางไฟล์สำหรับต้นฉบับตามที่อัปโหลด
{
"page": 1,
"per_page": 5,
"total_results": 38,
"next_page": "https://api.soundza.com/v1/sounds/search?q=whoosh&type=SOUND_EFFECT&per_page=5&page=2",
"search_id": "x7k2m9q4r1t8v3w6y0z5a2b4",
"sounds": [
{
"id": "cm9w2k4e30001",
"url": "https://soundza.com/sounds/fast-air-whoosh",
"title": "Fast Air Whoosh",
"description": "A quick, bright air whoosh that sweeps left to right.",
"type": "sound_effect",
"form": null,
"parts": null,
"vocals": null,
"style": null,
"good_for": ["transition"],
"duration": 0.84,
"bpm": null,
"key": null,
"chord": null,
"note": null,
"mood": ["airy", "bright"],
"tags": ["whoosh", "swipe", "air", "airy", "bright"],
"sync_ms": 310,
"lufs": -19.4,
"true_peak_db": -6.1,
"loudness": { "value": -18.2, "basis": "momentary_max" },
"gain_db": 5.1,
"loop_seamless": null,
"file_type": "audio/wav",
"file_extension": "wav",
"sample_rate": 48000,
"bit_depth": 24,
"channels": 2,
"size_bytes": 322604,
"category": { "id": "WHSH", "label": "Swooshes › Whoosh" },
"pack": {
"id": "cm8p1x7a20004",
"name": "Air and Motion",
"slug": "air-and-motion",
"sound_count": 42,
"url": "https://soundza.com/packs/air-and-motion"
},
"creator": null,
"preview_files": [
{ "type": "audio/mpeg", "bitrate": 128, "link": "https://media.soundza.com/public/previews/4fJ9aQx2LmP0sT7vKc1Rb8Ze.mp3" }
],
"download_url": "https://api.soundza.com/v1/sounds/cm9w2k4e30001/file",
"license": { "name": "Soundza Standard License", "url": "https://soundza.com/license" },
"attribution": "\"Fast Air Whoosh\" on Soundza (https://soundza.com/sounds/fast-air-whoosh)"
}
]
}
ประเภทและข้อเท็จจริง
type บอกว่าเสียงคืออะไร กรองตามประเภทก่อน จากนั้นตามข้อเท็จจริงที่คุณรู้ แล้วใส่ที่เหลือใน q
| type | สิ่งที่อยู่ในนั้น | ข้อเท็จจริง |
|---|---|---|
music | แทร็ก, ตัวอย่าง, loops, one-shots, stems, stingers, jingles และ vocal chops รวมถึงเพลงเกม | form (track, excerpt, loop, one_shot, stem), parts (full_mix, single_part), vocals (none, backing, lead), bpm, key, note, chord |
sound_effect | Whooshes, impacts, foley, เสียง UI และเกม เสียงพูดเป็นเอฟเฟกต์ | category (UCS), style (retro, cartoon; ตั้งค่าต่อแพ็ก) |
ambience | สถานที่, room tone และ noise beds | category (UCS) |
"เพลงพื้นหลังองค์กร ไม่มีเสียงร้อง" คือ type=music&vocals=none&q=corporate ด้วย type=music full mixes มาก่อน จากนั้น loops แล้ว single parts เว้นแต่คุณตั้งค่า parts good_for เลื่อนเสียงที่เหมาะกับงาน (transition, ui_click, background_bed …) ขึ้นในผลลัพธ์โดยไม่กรองอะไรออก การค้นหาด้วย q ที่ไม่พบอะไรในประเภทของมัน จะค้นหาทุกประเภทและระบุ type ใน relaxed_filters
ขีดจำกัด
คีย์ฟรีได้รับ:
- ค้นหา 60 ครั้งต่อนาที
- ดาวน์โหลด 250 ครั้งต่อชั่วโมง
- ดาวน์โหลด 350 ครั้งต่อวัน
ทุกการตอบสนองมีส่วนหัวเหล่านี้ 429 ยังรวม Retry-After ในวินาที:
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetX-RateLimit-Policy
คีย์ทั้งหมดในบัญชีเดียวใช้ขีดจำกัดร่วมกัน ฟังตัวอย่างเสียงด้วย preview_files ซึ่งฟรีและไม่นับ และดาวน์โหลดเฉพาะเสียงที่คุณใช้
เฉพาะเสียงที่ต่างกันเท่านั้นที่นับเป็นการดาวน์โหลด ดังนั้นการดึงเสียงเดียวกันอีกครั้งภายใน 24 ชั่วโมงจึงฟรี การดึงไฟล์ทั้งหมดถูกจำกัดที่สองเท่าของขีดจำกัดการดาวน์โหลด บันทึกแต่ละไฟล์ครั้งเดียวและใช้ซ้ำด้วย id ของเสียง การค้นหาเสียงเดียวหรือแพ็กเดียวมีขีดจำกัดแยกต่างหาก ห้าเท่าของขีดจำกัดการค้นหา
กำลังใส่ตัวเลือกเสียงในแอปของคุณหรือไม่ เชิญเลย: คีย์ฟรีครอบคลุมแอปขนาดเล็กที่มีผู้ใช้ไม่กี่คนต่อวัน เมื่อมีการเข้าชมจริง ขอขีดจำกัดที่สูงขึ้นจากหน้าคีย์และบอกเราเล็กน้อยเกี่ยวกับมัน หรือเขียนถึง admin@soundza.com เราจะตอบกลับทางอีเมล
การให้เครดิต
ทุกอย่างฟรีทั้งหมด สิ่งเดียวที่เราขอคือให้คุณให้เครดิต soundza.com (และ/หรือผู้สร้างเสียงต้นฉบับหากเกี่ยวข้อง) ในที่ที่เหมาะสมกับโปรเจกต์ของคุณ ideally โปรดรวมลิงก์ไปยัง soundza.com ที่ไหนสักแห่งบนเว็บไซต์/บล็อก/หน้า itch ของคุณ (เช่น 'ขอบคุณ soundza.com สำหรับเสียงฟรี') หากคุณไม่มีเว็บไซต์ เรายินดีรับการกล่าวถึงบนโซเชียลมีเดียหรือในคำอธิบายวิดีโอ YouTube เป็นต้น ช่วยบอกต่อ!
ด้านล่างเป็นตัวอย่างบางส่วน เรา flexible เกี่ยวกับวิธีที่คุณให้เครดิตเรา แต่เราขอให้คุณทำในวิธีที่เข้ากับโปรเจกต์ของคุณอย่างเป็นธรรมชาติ
| คุณกำลังทำ | วิธีให้เครดิต |
|---|---|
| แอปหรือเครื่องมือที่มีตัวเลือกเสียง | Powered by soundza ในตัวเลือก พร้อมลิงก์ไปยัง soundza.com ในส่วนท้ายเว็บไซต์ หน้า About บล็อก หรือที่อื่นที่เหมาะสม |
| เกม แม้แต่เกมเล็กๆ | ที่ใดก็ตามที่คุณแชร์ (โพสต์ Reddit หรือ Discord, X, devlog หรือเว็บไซต์ของคุณ, itch.io หรือ Steam) กล่าวขอบคุณ soundza.com อย่างรวดเร็ว พร้อมลิงก์หากทำได้ |
| วิดีโอ | Sound effects: soundza.com ในคำอธิบาย YouTube บน TikTok หรือ Instagram แท็ก @soundza_audio หากทำได้ |
| บอท เอเจนต์ หรือเครื่องมือโอเพนซอร์ส | หนึ่งบรรทัดใน README ข้อความช่วยเหลือ หรือหน้าลิสต์ของคุณ |
| สิ่งที่ทำเพื่อตัวเอง | ไม่ต้องทำอะไร |
อยากใช้โลโก้ของเราไหม ยินดีต้อนรับให้แสดงพร้อมลิงก์ของคุณ: โลโก้เต็ม (PNG) หรือ เครื่องหมายเดี่ยว (SVG) เพียงแต่อย่าใช้เป็นไอคอนแอปของคุณ
ทำอะไรกับ soundza หรือไม่ เราอยากเห็น อีเมล admin@soundza.com หรือแท็ก @soundza_audio เรารีแชร์โปรเจกต์เจ๋งๆ
ข้อผิดพลาด
ข้อผิดพลาดเป็น JSON: {"error": {"code", "message", "details"?}}
| สถานะ | รหัส | ความหมาย |
|---|---|---|
| 400 | invalid_request | พารามิเตอร์ผิด details ระบุแต่ละรายการ |
| 401 | missing_key | ไม่มีส่วนหัว Authorization: Bearer |
| 401 | invalid_key | คีย์ไม่มีอยู่ |
| 401 | revoked_key | คีย์ถูกเพิกถอน |
| 404 | not_found | ไม่มีเสียงสาธารณะที่มี id นั้น |
| 429 | rate_limited | ถึงขีดจำกัดแล้ว รอ Retry-After วินาที |
| 500 | server_error | มีบางอย่างผิดพลาดฝั่งเรา ลองอีกครั้งในไม่ช้า |
การอนุญาตสิทธิ์
เสียงทั้งหมดอยู่ภายใต้ Soundza Standard License ซึ่งเชื่อมโยงจากฟิลด์ license: ปลอดค่าลิขสิทธิ์สำหรับงานส่วนตัวและงานเชิงพาณิชย์ โดยไม่ต้องระบุที่มาสำหรับตัวเสียงเอง (ดู การให้เครดิต สำหรับสิ่งที่เราขอตอบแทน) เราตรวจสอบเสียงอย่างรอบคอบ แต่ให้เสียงตามสภาพ โดยไม่รับประกันว่าเสียงจะปราศจากข้อเรียกร้องของบุคคลที่สาม ใบอนุญาตมีข้อกำหนดฉบับเต็ม
แนวทาง
- เมื่อคนนอกทีมของคุณเห็นสิ่งที่คุณสร้าง ให้ลิงก์กลับไปที่ soundza.com ในแบบที่เหมาะสม: "Powered by soundza" ข้างตัวเลือกเสียงของคุณพร้อมลิงก์บนเว็บไซต์ของคุณ คำขอบคุณในที่ที่คุณแชร์เกม หรือบรรทัดหนึ่งในคำอธิบายวิดีโอของคุณ ดู soundza.com/developers#credit
- ขอ
download_urlของเสียงเมื่อเพิ่มลงในโปรเจกต์ บันทึกไฟล์ครั้งเดียว แล้วนำกลับมาใช้ใหม่ด้วยidของเสียง - ตัวอย่างเสียงมีไว้สำหรับฟัง ใช้ไฟล์ที่ดาวน์โหลดในงานที่เสร็จสมบูรณ์
- อย่าคัดลอกฟังก์ชันหลักของ Soundza หรือสร้างไลบรารีเสียงหรือ API ที่แข่งขันกัน
- คีย์ฟรีอาจเก็บเสียงที่ดาวน์โหลดได้สูงสุด 500 เสียง ลบเสียงใดๆ ที่ระบุใน
GET /v1/removalsและตรวจสอบอย่างน้อยเดือนละครั้ง - เคารพอัตราจำกัด และขอเมื่อคุณต้องการเพิ่ม เราอาจระงับหรือยุติการเข้าถึง API สำหรับใครก็ได้ ทุกเวลา ด้วยเหตุผลใดก็ได้
การใช้ API อยู่ภายใต้ ข้อกำหนดการให้บริการ และ ใบอนุญาต
Soundza picker
ตัวเลือกเสียงสำหรับผลิตภัณฑ์ของคุณในสามไฟล์: เส้นทางเซิร์ฟเวอร์สองเส้นทางที่เก็บคีย์ของคุณเป็นความลับ และคอมโพเนนต์ที่มีชิป ตัวอย่างเสียง และลิงก์เครดิต ปรับแต่งสไตล์ให้เข้ากับแอปของคุณ
// app/api/sounds/route.ts: search, with your key kept on the server
export async function GET(req: Request) {
const params = new URL(req.url).searchParams;
const res = await fetch(\`https://api.soundza.com/v1/sounds/search?${params}\`, {
headers: { Authorization: \`Bearer ${process.env.SOUNDZA_API_KEY}\` },
});
return new Response(res.body, { status: res.status, headers: { "Content-Type": "application/json" } });
}
// app/api/sounds/[id]/file/route.ts: call it from your server when a user adds a sound
export async function GET(req: Request, { params }: { params: Promise<{ id: string }> }) {
const { id } = await params;
const query = new URL(req.url).searchParams; // search_id, and your own user id as user
const res = await fetch(\`https://api.soundza.com/v1/sounds/${encodeURIComponent(id)}/file?${query}\`, {
headers: { Authorization: \`Bearer ${process.env.SOUNDZA_API_KEY}\` },
redirect: "manual",
});
const location = res.headers.get("location");
return location ? Response.redirect(location, 302) : new Response(res.body, { status: res.status });
}
เมื่อผู้ใช้เพิ่มเสียง ให้ดึงเส้นทางไฟล์จากเซิร์ฟเวอร์ของคุณและบันทึกไฟล์ลงในพื้นที่เก็บข้อมูลของคุณเอง นั่นนับเป็นการดาวน์โหลด เส้นทางจะเปลี่ยนเส้นทางไปยังลิงก์ที่ลงนามซึ่งมีอายุ 5 นาทีและไม่สามารถอ่านได้จากเบราว์เซอร์บนเว็บไซต์อื่น ดังนั้นอย่าดึงจากฝั่งไคลเอ็นต์หรือเก็บลิงก์นั้น ส่งรหัสผู้ใช้ของคุณเองเป็น user หากคุณต้องการรายงานต่อผู้ใช้
คำถามที่พบบ่อย
API ฟรีหรือไม่?
ใช่ API และคีย์ฟรี สิ่งตอบแทน เราอยากได้ลิงก์กลับไปที่ soundza ในที่ที่เหมาะกับสิ่งที่คุณสร้าง
ฉันต้องให้เครดิต soundza หรือไม่?
เราขอเมื่อคนนอกทีมของคุณเห็นสิ่งที่คุณสร้าง ในรูปแบบที่เหมาะสม: ลิงก์บนเว็บไซต์ของคุณ หน้าร้านค้า หรือคำอธิบายวิดีโอของคุณ ไม่จำเป็นต้องทำอะไรขณะที่คุณสร้างหรือทดสอบ หรือสำหรับสิ่งที่ใช้ส่วนตัวเท่านั้น
อะไรนับเป็นการให้เครดิต?
ลิงก์ไปยัง soundza.com ที่ผู้คนเห็นได้ สำหรับแอป Powered by soundza ข้างตัวเลือกเสียงของคุณพร้อมลิงก์ในส่วนท้ายเว็บไซต์ หน้าเกี่ยวกับ บล็อก หรือที่อื่นที่เหมาะสม สำหรับเกม คำขอบคุณในที่ที่คุณแชร์: โพสต์บน Reddit หรือ Discord, devlog หรือเว็บไซต์ของคุณ หรือหน้า itch.io หรือ Steam สำหรับวิดีโอ Sound effects: soundza.com ในคำอธิบาย การกล่าวถึงบน X, Discord หรือ YouTube ก็ดีเช่นกัน
คุณจะแชร์สิ่งที่ฉันสร้างหรือไม่?
เราอยากได้ยินเกี่ยวกับสิ่งที่คุณสร้าง อีเมล admin@soundza.com หรือแท็ก @soundza_audio และบอกเราว่าคุณสร้างอะไร เรารีแชร์โปรเจกต์เจ๋งๆ ที่สร้างด้วย soundza
ฉันใช้โลโก้ soundza ได้หรือไม่?
ได้ เราอยากให้คุณแสดงพร้อมลิงก์ "Powered by soundza" แม้จะไม่บังคับก็ตาม กรุณาอย่าใช้เป็นไอคอนแอปของคุณ ดาวน์โหลดโลโก้เต็ม (soundza.com/logo-wordmark.png) หรือเครื่องหมายเดี่ยว (soundza.com/logo.svg)
ขีดจำกัดคืออะไร?
คีย์ฟรีได้ 60 การค้นหาต่อนาที 250 การดาวน์โหลดต่อชั่วโมง และ 350 ต่อวัน รวมทุกคีย์ในบัญชีของคุณ ตัวอย่างเสียงไม่นับ ทุกการตอบกลับมีส่วนหัว X-RateLimit-*
ฉันจะขอขีดจำกัดที่สูงขึ้นได้อย่างไร?
ขีดจำกัดฟรีครอบคลุมการสร้างเกม การตัดต่อวิดีโอ หรือแอปขนาดเล็กที่มีตัวเลือกเสียง หากคุณใส่ตัวเลือกเสียงในแอปที่มีการเข้าชมจริง ใช้ "Request higher limits" บนหน้าคีย์และบอกเราเล็กน้อย หรืออีเมล admin@soundza.com พร้อมคำนำหน้าคีย์ของคุณและสิ่งที่คุณกำลังสร้าง เราจะตอบกลับทางอีเมล
ฉันใช้เสียงในโปรเจกต์เชิงพาณิชย์ได้หรือไม่?
ได้ ทุกเสียงปลอดค่าลิขสิทธิ์สำหรับงานส่วนตัวและงานเชิงพาณิชย์ภายใต้ Soundza Standard License และการรวมเสียงในเกมหรือแอปที่คุณสร้างก็ทำได้
ฉันเก็บไฟล์ได้หรือไม่?
ได้ บันทึกแต่ละไฟล์ครั้งเดียวแล้วนำกลับมาใช้ใหม่ด้วย id ของเสียง คีย์ฟรีอาจเก็บเสียงที่ดาวน์โหลดได้สูงสุด 500 เสียง อย่าเก็บลิงก์ที่ลงนามที่ download_url เปลี่ยนเส้นทางไป; มันมีอายุ 5 นาที
จะเกิดอะไรขึ้นถ้าเสียงถูกลบ?
เรียก GET /v1/removals?since=<date> เป็นครั้งคราว (อย่างน้อยเดือนละครั้ง) และลบเสียงใดๆ ที่ระบุ
ฉันใช้เสียงเพื่อฝึก AI ได้หรือไม่?
ไม่ได้ เสียงไม่สามารถใช้ฝึก ปรับแต่ง หรือสร้างโมเดล AI หรือแมชชีนเลิร์นนิงได้
ฉันสร้างไลบรารีเสียงบน API ได้หรือไม่?
ไม่ได้ กรุณาอย่าแจกจ่ายเสียงเป็นไฟล์เดี่ยวหรือชุดตัวอย่าง หรือสร้างไลบรารีเสียงหรือ API ที่แข่งขันกัน
REST หรือ MCP?
ทั้งสองใช้คีย์ ขีดจำกัด และแคตตาล็อกเดียวกัน ใช้ REST จากโค้ดของคุณ และ MCP (mcp.soundza.com/mcp) เพื่อให้เอเจนต์เช่น Claude Code หรือ Cursor ค้นหาและดาวน์โหลดให้คุณ
เอเจนต์เขียนโค้ดของฉันขอคีย์เองได้หรือไม่?
ได้ ขอให้มันค้นหาเสียงบน soundza.com มันอ่าน llms.txt ส่งลิงก์หนึ่งลิงก์ให้คุณอนุมัติ และบันทึกคีย์