加载中...

基础信息

查看接口基本信息和返回格式

免责声明

本平台提供的API服务均来自互联网,可能包含生成式AI内容。所有返回内容仅供参考,平台不对内容的准确性、完整性、时效性或适用性做任何保证。使用者应自行判断并承担使用风险。

接口描述

企鹅机器人点歌专属(支持黄白助手),支持图片列表、卡片输出

七日请求统计
本周总请求: - 日均: -
请求方式
GET POST 推荐
请求地址
https://dome.api.yunmge.com/api/song_bot
返回方式
JSON 默认返回格式,包含完整数据结构
TEXT 纯文本格式,适合简单数据返回
IMAGE 图片二进制流,Content-Type: image/*
返回预览
JSON
TEXT
IMAGE
JSON
{
    "code": 200,
    "data": {
        "name": "告白气球",
        "singer": "周杰伦",
        "pay": "VIP",
        "quality": "标准品质",
        "time": "03:35",
        "size": "3.29MB",
        "cover": "http://api.yunmge.com/upload/song/song_image/003OUlho2HcRHC.jpg",
        "link": "https://i.y.qq.com/v8/playsong.html?songmid=003OUlho2HcRHC&type=0",
        "music_url": "http://api.yunmge.com/upload/song/song_mp3/003OUlho2HcRHC.mp3",
        "lyric": "[ti:告白气球]\n[ar:周杰伦]\n[al:周杰伦的床边故事]\n[by:]\n[offset:0]\n[00:00.00]告白气球 - 周杰伦 (Jay Chou)\n[00:05.89]词:方文山\n[00:11.79]曲:周杰伦\n[00:17.69]编曲:林迈可\n[00:23.59]塞纳河畔 左岸的咖啡\n[00:26.16]我手一杯 品尝你的美\n[00:28.78]\n[00:29.33]留下唇印的嘴\n[00:31.83]\n[00:34.27]花店玫瑰 名字写错谁\n[00:36.90]告白气球 风吹到对街\n[00:39.29]\n[00:40.01]微笑在天上飞\n[00:42.10]\n[00:44.01]你说你有点难追\n[00:46.57]想让我知难而退\n[00:49.22]礼物不需挑最贵\n[00:51.89]只要香榭的落叶\n[00:54.56]喔 营造浪漫的约会\n[00:57.26]不害怕搞砸一切\n[00:59.93]拥有你就拥有全世界\n[01:04.10]\n[01:05.01]亲爱的 爱上你\n[01:08.17]从那天起\n[01:10.61]\n[01:11.33]甜蜜的很轻易\n[01:14.43]\n[01:15.69]亲爱的 别任性\n[01:18.85]你的眼睛\n[01:21.24]\n[01:21.94]在说我愿意\n[01:25.23]\n[01:48.90]塞纳河畔 左岸的咖啡\n[01:51.46]我手一杯 品尝你的美\n[01:54.43]留下唇印的嘴\n[01:56.63]\n[01:59.56]花店玫瑰 名字写错谁\n[02:02.14]告白气球 风吹到对街\n[02:04.37]\n[02:05.23]微笑在天上飞\n[02:07.49]\n[02:09.29]你说你有点难追\n[02:11.90]想让我知难而退\n[02:14.60]礼物不需挑最贵\n[02:17.26]只要香榭的落叶\n[02:19.93]喔 营造浪漫的约会\n[02:22.65]不害怕搞砸一切\n[02:25.27]拥有你就拥有 全世界\n[02:29.23]\n[02:30.31]亲爱的 爱上你\n[02:33.58]从那天起\n[02:36.03]\n[02:36.60]甜蜜的很轻易\n[02:39.65]\n[02:40.94]亲爱的 别任性\n[02:44.20]你的眼睛\n[02:46.70]\n[02:47.26]在说我愿意\n[02:50.81]\n[02:51.76]亲爱的 爱上你\n[02:54.52]\n[02:55.05]恋爱日记\n[02:57.30]\n[02:57.93]飘香水的回忆\n[03:00.72]\n[03:02.33]一整瓶 的梦境\n[03:05.42]全都有你\n[03:07.91]\n[03:08.64]搅拌在一起\n[03:11.39]\n[03:13.02]亲爱的别任性\n[03:16.23]你的眼睛\n[03:19.99]\n[03:21.31]在说我愿意"
    },
    "msg": "请求成功",
    "time": "2026-01-09 22:16:50",
    "ip": "221.213.14.197"
}

计费标准

了解接口的计费方式和价格
付费接口定价
付费
每日免费 9
超出后计费
普通用户
额度消耗 1额度/次
余额扣费 0.01元/次
会员用户
调用费用 免费
QPS限制
普通用户
60
次/分钟
会员用户
999999
次/分钟
每日请求次数
普通用户
999999
次/天
会员用户
999999
次/天

安全认证

了解接口的认证方式和访问凭证管理
Token 认证

登录后可查看您的Token

立即登录
实名认证
无需实名认证
本接口对所有用户开放,无需实名认证即可访问
认证方式
推荐 Header 认证

通过 HTTP Header 传递认证信息

Authorization
Bearer {access_token}

或通过curl请求参数传递:

curl
curl "https://dome.api.yunmge.com/api/song_bot?token=YOUR_TOKEN"

参数文档

查看接口请求参数和返回字段说明
请求参数
参数名 类型 必填 默认值 可选值 说明
token string 必填 登录后显示你的请求token 接口请求唯一认证标识!
mode string 可选 json json、text、image、audio 返回格式
name string 必填 告白气球 音乐名称
n int 必填 歌曲序号<br/>留空返回歌曲列表
mun int 可选 10 10、15、20 列表数量
img int 可选 1 1(经典)、2(可爱) 图片风格
hb string 可选 no yes、no 是否适配黄白助手<br/>开启适配后所有参数将失效
返回参数
字段名 类型 说明
code
int 返回状态码
name
string 歌名
singer
string 歌手
quality
string 音质(点歌输出标准音质够了)
time
string 时长
size
string 大小
cover
string 封面地址
music_url
string 音乐地址
lyric
string 歌词
lyric_url
string 歌词地址
pay
string 歌曲类型
link
string 官方链接,这里以QQ音乐为示例

状态码

了解接口返回的状态码含义及处理方式
接口状态码
状态码 说明
200 请求成功
351 多错误,自行查看返回
服务器状态码

在线测试

在线调试接口,实时查看响应结果
发起请求
GET/POST

示例代码

多种语言的接口调用示例
PHP
JavaScript
NodeJs
Python
Go
Java
C#
C
C++
易语言
PHP
<?php
$API_TOKEN = 'YOUR_TOKEN';
$API_URL = 'https://dome.api.yunmge.com/api/song_bot';

$params = array(
    'token' => 'YOUR_TOKEN',
    'mode' => 'json',
    'name' => '告白气球',
    'n' => '无',
    'mun' => '10',
    'img' => '1',
    'hb' => 'no',
);

$res = api::send($API_URL, $params, 'GET/POST');
print($res);

class api {
    public static function send($url, $data, $type) {
        $data = http_build_query($data);
        $ch = curl_init();
        if ($type == 'POST') {
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        } else {
            curl_setopt($ch, CURLOPT_URL, $url . '?' . $data);
        }
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        $res = curl_exec($ch);
        curl_close($ch);
        return $res;
    }
}
JavaScript
$.ajax({
    url: 'https://dome.api.yunmge.com/api/song_bot',
    data: {
        token: 'YOUR_TOKEN',
        mode: 'json',
        name: '告白气球',
        n: '无',
        mun: '10',
        img: '1',
        hb: 'no',
    },
    type: 'GET/POST',
    dataType: 'json',
    success: function(data) {
        console.log(data);
    },
    error: function(err) {
        console.log('请求失败', err);
    }
});
Python
import requests

url = "https://dome.api.yunmge.com/api/song_bot"
data = {
    "token": "YOUR_TOKEN",
    "mode": "json",
    "name": "告白气球",
    "n": "无",
    "mun": "10",
    "img": "1",
    "hb": "no",
}

response = requests.post(url, data=data)
print(response.json())
Java
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.*;

public class ApiRequest {
    public static void main(String[] args) throws Exception {
        URL url = new URL("https://dome.api.yunmge.com/api/song_bot");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setRequestMethod("GET/POST");
        conn.setConnectTimeout(10000);

        BufferedReader reader = new BufferedReader(
            new InputStreamReader(conn.getInputStream()));
        String line;
        StringBuilder result = new StringBuilder();
        while ((line = reader.readLine()) != null) {
            result.append(line);
        }
        reader.close();
        System.out.println(result.toString());
    }
}
Go
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
"strings"
)

func main() {
    data := "token=YOUR_TOKEN&mode=json&name=%E5%91%8A%E7%99%BD%E6%B0%94%E7%90%83&n=%E6%97%A0&mun=10&img=1&hb=no"
    resp, _ := http.Post("https://dome.api.yunmge.com/api/song_bot",
        "application/x-www-form-urlencoded", strings.NewReader(data))
    defer resp.Body.Close()
    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}
C#
using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        using var client = new HttpClient();
        var data = new FormUrlEncodedContent(new Dictionary<string, string> {
            {"token", "YOUR_TOKEN"},
            {"mode", "json"},
            {"name", "告白气球"},
            {"n", "无"},
            {"mun", "10"},
            {"img", "1"},
            {"hb", "no"},
        });
        var response = await client.PostAsync("https://dome.api.yunmge.com/api/song_bot", data);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(response);
    }
}
NodeJs
const https = require('https');
const querystring = require('querystring');

const postData = querystring.stringify({
    'token': 'YOUR_TOKEN',
    'mode': 'json',
    'name': '告白气球',
    'n': '无',
    'mun': '10',
    'img': '1',
    'hb': 'no',
});
const options = {
    hostname: 'dome.api.yunmge.com',
    path: '/api/song_bot',
    method: 'POST',
    headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
};
const req = https.request(options, res => {
    let data = '';
    res.on('data', d => data += d);
    res.on('end', () => console.log(data));
});
req.write(postData);
req.end();
C
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <curl/curl.h>

static size_t WriteCallback(void *contents, size_t size, size_t nmemb, void *userp) {
    ((char*)userp)[0] = '\0';
    strcat(userp, contents);
    return size * nmemb;
}

int main() {
    CURL *curl;
    CURLcode res;
    char response[4096] = {0};

    curl_global_init(CURL_GLOBAL_DEFAULT);
    curl = curl_easy_init();

    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://dome.api.yunmge.com/api/song_bot");
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "token=YOUR_TOKEN&mode=json&name=%E5%91%8A%E7%99%BD%E6%B0%94%E7%90%83&n=%E6%97%A0&mun=10&img=1&hb=no");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, response);
        curl_easy_setopt(curl, CURLOPT_TIMEOUT, 10L);

        res = curl_easy_perform(curl);
        if(res == CURLE_OK) printf("%s\n", response);
        curl_easy_cleanup(curl);
    }
    curl_global_cleanup();
    return 0;
}
C++
#include <iostream>
#include <string>
#include <curl/curl.h>

size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* userp) {
    userp->append((char*)contents, size * nmemb);
    return size * nmemb;
}

int main() {
    CURL* curl = curl_easy_init();
    std::string response;

    if (curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "https://dome.api.yunmge.com/api/song_bot");
        curl_easy_setopt(curl, CURLOPT_POST, 1L);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "token=YOUR_TOKEN&mode=json&name=%E5%91%8A%E7%99%BD%E6%B0%94%E7%90%83&n=%E6%97%A0&mun=10&img=1&hb=no");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
        curl_easy_setopt(curl, CURLOPT_TIMEOUT, 10L);

        CURLcode res = curl_easy_perform(curl);
        if (res == CURLE_OK) std::cout << response << std::endl;
        curl_easy_cleanup(curl);
    }
    curl_global_cleanup();
    return 0;
}
易语言
.版本 2
.支持库 spec

.局部变量 url, 文本型
.局部变量 params, 文本型
.局部变量 result, 文本型

url = "https://dome.api.yunmge.com/api/song_bot"
params = "token=YOUR_TOKEN&mode=json&name=%E5%91%8A%E7%99%BD%E6%B0%94%E7%90%83&n=%E6%97%A0&mun=10&img=1&hb=no"

result = 编码_URL解码 (网页_访问 (url, , params))
调试输出 (result)

AI开发文档

导出接口文档供AI助手快速理解接口结构
复制下方内容粘贴给AI助手,即可快速生成对接代码。
JSON 格式 0 KB