You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure API Management API筛选特定状态的订阅(遇属性不支持筛选错误)

解决Azure APIM获取特定状态订阅列表的问题

你遇到的问题是对的:ARM API的/users/{userId}/subscriptions端点确实不支持通过state属性进行筛选,官方当前的API设计里这个属性不在可过滤字段范围内。

有两种可行的解决办法:

方法一:使用APIM原生管理API(推荐)

APIM自身的管理API支持对订阅状态进行筛选,端点路径为:

GET https://{servicename}.management.azure-api.net/subscriptions?filter=state eq 'submitted'&api-version=2022-08-01

如果需要限定到特定用户,可以在过滤条件里加上用户ID:

GET https://{servicename}.management.azure-api.net/subscriptions?filter=state eq 'submitted' and userId eq '/users/1'&api-version=2022-08-01

这个端点的认证方式可以使用APIM实例的管理密钥,或者通过Azure AD OAuth令牌进行授权。

方法二:客户端本地筛选

如果必须使用ARM API的话,只能先获取该用户的所有订阅列表,再在客户端代码中自行过滤state属性为submitted的条目。示例逻辑(伪代码):

# 先调用ARM API获取所有订阅
all_subscriptions = arm_api_get("/users/1/subscriptions")
# 本地筛选目标状态的订阅
target_subscriptions = [sub for sub in all_subscriptions if sub["properties"]["state"] == "submitted"]

内容的提问来源于stack exchange,提问作者Blingers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 07:22:03