跳到主要内容

网易云绑定与同步

DELETE /cm/ncmbind​

解绑网易云账号(已导入歌单保留为本地快照)

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request DELETE 'https://music.20110208.xyz/cm/ncmbind' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue
note'已解绑(已导入的歌单保留为本地快照)'

实现定位:backend/cm_server.py:3320。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind​

网易云绑定状态(bound/profile/stale/lastSync)

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
响应体_payload_bind(require_user(handler))

实现定位:backend/cm_server.py:3283。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/comment-like/{id}​

网易云绑定与同步 · /ncmbind/comment-like/{id}

权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。

请求参数​

位置字段默认/读取方式
pathid路径占位符;按业务替换
JSON bodycommentId0(空值时回退)
JSON bodylikeTrue

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'点赞评论需先绑定网易云账号'
400'缺少 commentId'
502str(e)

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/comment-like/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"like": "<like>", "commentId": "<commentId>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue
likedlike

实现定位:backend/cm_server.py:5027。接口参数和返回条件均来自该路由分支。

DELETE /cm/ncmbind/comment/{id}​

网易云绑定与同步 · /ncmbind/comment/{id}

权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。

请求参数​

位置字段默认/读取方式
pathid路径占位符;按业务替换
JSON bodycommentId0(空值时回退)
JSON bodycontent''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'发评/删评需先绑定网易云账号'
400'缺少 commentId'
400'评论内容不能为空'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request DELETE 'https://music.20110208.xyz/cm/ncmbind/comment/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"commentId": "<commentId>", "content": "<content>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue

实现定位:backend/cm_server.py:5001。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/comment/{id}​

网易云绑定与同步 · /ncmbind/comment/{id}

权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。

请求参数​

位置字段默认/读取方式
pathid路径占位符;按业务替换
JSON bodycommentId0(空值时回退)
JSON bodycontent''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'发评/删评需先绑定网易云账号'
400'缺少 commentId'
400'评论内容不能为空'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/comment/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"commentId": "<commentId>", "content": "<content>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue

实现定位:backend/cm_server.py:5001。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/import​

同步本机网易云登录至当前账号;服务端验证身份,不返回 cookie;详见第三方登录态同步专题

权限:Bearer。

参数校验与业务错误​

HTTP服务端校验说明
exc.statusstr(exc)

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/import' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
响应体result

实现定位:backend/cm_server.py:3275。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/like/{id}​

网易云绑定与同步 · /ncmbind/like/{id}

权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。

请求参数​

位置字段默认/读取方式
pathid路径占位符;按业务替换
JSON bodylikeTrue

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'未绑定网易云账号,请先在「我的」页扫码绑定'
502str(e)

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/like/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"like": "<like>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
likedlike
countcounts.get(ncm_id)

实现定位:backend/cm_server.py:3462。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind/likelist​

网易云绑定与同步 · /ncmbind/likelist

权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。

参数校验与业务错误​

HTTP服务端校验说明
502f'获取网易云红心列表失败: {e}'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind/likelist' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
idsids

HTTP 200

字段取值/生成逻辑
ids[]

HTTP 200

字段取值/生成逻辑
idsjson.loads(cached)

实现定位:backend/cm_server.py:3443。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind/live​

网易云登录态诊断(上游 /login/status 权威判据)

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind/live' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
boundTrue
okFalse
note'网易云登录态已失效,请重新扫码绑定或尝试刷新'

HTTP 200

字段取值/生成逻辑
boundFalse

HTTP 200

字段取值/生成逻辑
boundTrue
okTrue
profile{'uid': prof.get('userId') or b['ncm_uid'], 'nickname': prof.get('nickname') or b['ncm_nickname'], 'avatar': p

HTTP 200

字段取值/生成逻辑
boundTrue
okFalse
notef'上游查询失败:{e}'

实现定位:backend/cm_server.py:3329。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/phone/code​

手机绑定-1:发送验证码 {phone, ctcode?}(60s 冷却)

权限:Bearer。

请求参数​

位置字段默认/读取方式
JSON bodyctcode'86'(空值时回退)
JSON bodyphone''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'手机号格式不正确'
429'验证码已发送,请 60 秒后再试'
e.status_codestr(e)

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/phone/code' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"phone": "<phone>", "ctcode": "<ctcode>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue
ttl300

实现定位:backend/cm_server.py:3404。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/phone/login​

手机绑定-2:验证码登录并绑定 {phone, captcha, ctcode?}

权限:Bearer。

请求参数​

位置字段默认/读取方式
JSON bodycaptcha''(空值时回退)
JSON bodyctcode'86'(空值时回退)
JSON bodyphone''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'手机号与验证码均不能为空'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/phone/login' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"phone": "<phone>", "captcha": "<captcha>", "ctcode": "<ctcode>"}'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue
profileprof

实现定位:backend/cm_server.py:3425。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind/qr/check​

二维码绑定-3:轮询扫码状态(801 待扫 / 802 已扫 / 803 成功绑定 / 800 过期)

权限:Bearer。

请求参数​

位置字段默认/读取方式
querykey''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'会话不存在或已过期,请重新生成二维码'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind/qr/check?key=<key>' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
codecode

HTTP 200

字段取值/生成逻辑
code803
profileprof

实现定位:backend/cm_server.py:3382。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind/qr/img​

二维码绑定-2:key→base64 二维码图片(?key=)

权限:Bearer。

请求参数​

位置字段默认/读取方式
querykey''(空值时回退)

表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。

参数校验与业务错误​

HTTP服务端校验说明
400'缺少 key'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind/qr/img?key=<key>' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
qrimgimg

实现定位:backend/cm_server.py:3372。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/qr/key​

二维码绑定-1:取 key

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/qr/key' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
keykey

实现定位:backend/cm_server.py:3360。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/refresh​

刷新网易云登录态(cookie 续期,免重扫)

权限:Bearer。

参数校验与业务错误​

HTTP服务端校验说明
401'请先绑定网易云账号后再使用该功能'

说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/refresh' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
okTrue
note'登录态已刷新'

实现定位:backend/cm_server.py:3350。接口参数和返回条件均来自该路由分支。

GET /cm/ncmbind/session​

第三方客户端用:一次返回 bound/valid/profile/note(不暴露 cookie,登录态由服务端代理)

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request GET 'https://music.20110208.xyz/cm/ncmbind/session' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
boundTrue
validok
stalenot ok
profile{'uid': prof.get('userId') or base['uid'], 'nickname': prof.get('nickname') or base['nickname'], 'avatar': pro
lastSyncb['last_sync']
lastSyncCountb['last_sync_count']
note'登录态有效' if ok else '网易云登录态已失效,请重新扫码绑定或调用 /ncmbind/refresh'

HTTP 200

字段取值/生成逻辑
boundFalse
validFalse
staleFalse
profileNone
note'尚未绑定网易云账号'

HTTP 200

字段取值/生成逻辑
boundTrue
validNone
stalebool(b['stale'])
profilebase
lastSyncb['last_sync']
lastSyncCountb['last_sync_count']
notef'上游查询失败,稍后再试:{e}'

实现定位:backend/cm_server.py:3286。接口参数和返回条件均来自该路由分支。

POST /cm/ncmbind/sync​

把网易云歌单同步为本站歌单快照

权限:Bearer。

请求模板​

将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。

curl --request POST 'https://music.20110208.xyz/cm/ncmbind/sync' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'

返回结构​

以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。

HTTP 200

字段取值/生成逻辑
响应体sync_ncm_playlists(u['id'])

实现定位:backend/cm_server.py:3439。接口参数和返回条件均来自该路由分支。