Azure API 管理模板数据模型参考

本主题介绍数据模型中常用项目的实体和类型表示形式,这些数据模型适用于 Azure API 管理中的开发人员门户模板。

如需详细了解如何使用模板,请参阅如何使用模板自定义 API 管理开发人员门户

注意

以下文档内容与已弃用的开发人员门户有关。 你可以像往常一样继续使用它,直到它在 2023 年 10 月停用,届时将从所有 API 管理服务中将其删除。 弃用的门户只会接收关键安全更新。 有关更多详细信息,请参阅以下文章:

可用性

重要

此功能在 API 管理的“高级”、“标准”、“基本”和“开发人员”层中可用 。

参考

API

API 实体具有以下属性:

properties 类型 说明
id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的 API。 值是有效的相对 URL,采用 apis/{id} 格式,其中 {id} 是 API 标识符。 此属性为只读。
name 字符串 API 的名称。 不得为空。 最大长度为 100 个字符。
description 字符串 API 的说明。 不得为空。 可以包含 HTML 格式标记。 最大长度为 1000 个字符。
serviceUrl 字符串 实现此 API 的后端服务的绝对 URL。
path 字符串 相对 URL,用于唯一标识此 API 及其在 API 管理服务实例中的所有资源路径。 可将其追加到在服务实例创建过程中指定的 API 终结点基 URL,构成此 API 的公共 URL。
protocols 数字数组 说明可在哪些协议上调用此 API 中的操作。 允许的值为 1 - http 和/或 2 - https
authenticationSettings 授权服务器身份验证设置 此 API 中包含的身份验证设置的集合。
subscriptionKeyParameterNames 对象 (object) 可选属性,可用于指定包含订阅密钥的查询参数和/或标头参数的自定义名称。 如果存在此属性,则其必须包含以下两个属性中的至少一个。

{ "subscriptionKeyParameterNames": { "query": “customQueryParameterName", "header": “customHeaderParameterName" } }

API 摘要

API summary 实体具有以下属性:

properties 类型 说明
id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的 API。 值是有效的相对 URL,采用 apis/{id} 格式,其中 {id} 是 API 标识符。 此属性为只读。
name 字符串 API 的名称。 不得为空。 最大长度为 100 个字符。
description 字符串 API 的说明。 不得为空。 可以包含 HTML 格式标记。 最大长度为 1000 个字符。

应用程序

application 实体具有以下属性:

properties 类型 说明
Id 字符串 应用程序的唯一标识符。
Title 字符串 应用程序的标题。
Description 字符串 应用程序的说明。
Url URI 应用程序的 URI。
Version 字符串 应用程序的版本信息。
Requirements 字符串 应用程序的要求的说明。
State 数字 应用程序的当前状态。

- 0 - 已注册

- 1 - 已提交

- 2 - 已发布

- 3 - 已拒绝

- 4 - 未发布
RegistrationDate DateTime 注册应用程序的日期和时间。
CategoryId 数字 应用程序的类别(财务、娱乐等)
DeveloperId 字符串 提交应用程序的开发人员的唯一标识符。
Attachments 附件实体的集合。 应用程序的任何附件,例如屏幕截图或图标。
Icon 附件 应用程序的图标。

附件

attachment 实体具有以下属性:

properties 类型 说明
UniqueId 字符串 附件的唯一标识符。
Url 字符串 资源的 URL。
Type 字符串 附件的类型。
ContentType 字符串 附件的媒体类型。

代码示例

属性 类型 说明
title 字符串 操作的名称。
snippet 字符串 此属性已弃用,不应使用。
brush 字符串 显示代码示例时要使用的代码语法着色模板。 允许的值为 plainphpjavaxmlobjcpythonrubycsharp
template 字符串 此代码示例模板的名称。
body 字符串 占位符,代表代码片段的代码示例部分。
method 字符串 此操作的 HTTP 方法。
scheme 字符串 将用于操作请求的协议。
path 字符串 操作的路径。
query 字符串 包含已定义参数的查询字符串示例。
host 字符串 API 管理服务网关(针对包含此操作的 API)的 URL。
headers 标头实体的集合。 此操作的标头。
parameters 参数实体的集合。 为此操作定义的参数。

注释

API 实体具有以下属性:

properties 类型 说明
Id 数字 注释的 ID。
CommentText 字符串 注释的正文。 可以包含 HTML。
DeveloperCompany 字符串 开发人员所在公司的名称。
PostedOn DateTime 发布注释的日期和时间。

问题

issue 实体具有以下属性。

properties 类型 说明
Id 字符串 问题的唯一标识符。
ApiID 字符串 报告此问题时所针对的 API 的 ID。
Title 字符串 问题的标题。
Description 字符串 问题的说明。
SubscriptionDeveloperName 字符串 报告此问题的开发人员的名字。
IssueState 字符串 问题的当前状态。 可能的值为“已提议”、“已打开”、“已关闭”。
ReportedOn DateTime 报告此问题的日期和时间。
Comments 注释实体的集合。 此问题的注释。
Attachments 附件实体的集合。 此问题的任何附件。
Services API 实体的集合。 报告此问题的用户所订阅的 API。

筛选

filtering 实体具有以下属性:

properties 类型 说明
Pattern 字符串 当前的搜索词;如果没有搜索词,则为 null
Placeholder 字符串 没有指定搜索词时,要在搜索框中显示的文本。

本部分描述 parameter 表示形式。

properties 类型 说明
name 字符串 参数名称。
description 字符串 参数说明。
value 字符串 标头值。
typeName 字符串 标头值的数据类型。
options 字符串 选项。
required boolean 标头是否为必需。
readOnly boolean 标头是否为只读。

HTTP 请求

本部分描述 request 表示形式。

properties 类型 说明
description 字符串 操作请求说明。
headers 标头实体数组。 请求标头。
parameters 参数数组 操作请求参数的集合。
representations 表示形式数组 操作请求表示形式的集合。

HTTP 响应

本部分描述 response 表示形式。

properties 类型 说明
statusCode 正整数 操作响应状态代码。
description 字符串 操作响应说明。
representations 表示形式数组 操作响应表示形式的集合。

操作

operation 实体具有以下属性:

properties 类型 说明
id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的操作。 值是有效的相对 URL,采用 apis/{aid}/operations/{id} 格式,其中 {aid} 是 API 标识符,{id} 是操作标识符。 此属性为只读。
name 字符串 操作的名称。 不得为空。 最大长度为 100 个字符。
description 字符串 操作说明。 不得为空。 可以包含 HTML 格式标记。 最大长度为 1000 个字符。
scheme 字符串 说明可在哪些协议上调用此 API 中的操作。 允许的值为 httphttps 或者 httphttps
uriTemplate 字符串 相对 URL 模板,标识此操作的目标资源。 可以包括参数。 示例: customers/{cid}/orders/{oid}/?date={date}
host 字符串 托管 API 的 API 管理网关 URL。
httpMethod 字符串 操作 HTTP 方法。
request HTTP 请求 一个实体,包含请求详细信息。
responses HTTP 响应数组 操作 HTTP 响应实体数组。

operation menu 实体具有以下属性:

properties 类型 说明
ApiId 字符串 当前 API 的 ID。
CurrentOperationId 字符串 当前操作的 ID。
Action 字符串 菜单类型。
MenuItems 操作菜单项实体的集合。 当前 API 的操作。

operation menu item 实体具有以下属性:

properties 类型 说明
Id 字符串 操作的 ID。
Title 字符串 操作说明。
HttpMethod 字符串 此操作的 Http 方法。

分页

paging 实体具有以下属性:

properties 类型 说明
Page 数字 当前页码。
PageSize 数字 要显示在单个页面上的最大结果数。
TotalItemCount 数字 要显示的项数。
ShowAll boolean 是否在单页上显示所有结果。
PageCount 数字 结果的页数。

参数

本部分描述 parameter 表示形式。

properties 类型 说明
name 字符串 参数名称。
description 字符串 参数说明。
value 字符串 参数值。
options 字符串数组 为查询参数值定义的值。
required boolean 指定参数是否为必需。
kind 数字 此参数是路径参数 (1),还是查询字符串参数 (2)。
typeName 字符串 参数类型。

产品

product 实体具有以下属性:

properties 类型 说明
Id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的产品。 值是有效的相对 URL,采用 products/{pid} 格式,其中 {pid} 是产品标识符。 此属性为只读。
Title 字符串 产品的名称。 不得为空。 最大长度为 100 个字符。
Description 字符串 产品说明。 不得为空。 可以包含 HTML 格式标记。 最大长度为 1000 个字符。
Terms 字符串 产品使用条款。 当开发人员尝试订阅此产品时,系统会显示这些条款,开发人员需接受这些条款才能完成订阅过程。
ProductState 数字 指定产品是否已发布。 开发人员可以在开发人员门户中发现已发布的产品。 尚未发布的产品只对管理员可见。

允许用于产品状态的值包括:

- 0 - Not Published

- 1 - Published

- 2 - Deleted
AllowMultipleSubscriptions boolean 指定用户是否可以同时拥有此产品的多个订阅。
MultipleSubscriptionsCount 数字 允许用户同时拥有此产品订阅的最大数。

提供程序

provider 实体具有以下属性:

properties 类型 说明
Properties 字符串字典 此身份验证提供程序的属性。
AuthenticationType 字符串 提供程序类型。 (Azure Active Directory、Microsoft 帐户)。
Caption 字符串 提供程序的显示名称。

表示形式

本部分描述 representation

properties 类型 说明
contentType 字符串 指定此表示形式的已注册内容类型或自定义内容类型,例如 application/xml
sample 字符串 表示形式的示例。

订阅

subscription 实体具有以下属性:

properties 类型 说明
Id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的订阅。 值是有效的相对 URL,采用 subscriptions/{sid} 格式,其中 {sid} 是订阅标识符。 此属性为只读。
ProductId 字符串 已订阅产品的产品资源标识符。 值是有效的相对 URL,采用 products/{pid} 格式,其中 {pid} 是产品标识符。
ProductTitle 字符串 产品的名称。 不得为空。 最大长度为 100 个字符。
ProductDescription 字符串 产品说明。 不得为空。 可以包含 HTML 格式标记。 最大长度为 1000 个字符。
ProductDetailsUrl 字符串 指向产品详细信息的相对 URL。
state 字符串 订阅的状态。 可能的状态包括:

- 0 - suspended - 订阅被阻止,订阅服务器无法调用产品的任何 API。

- 1 - active - 订阅处于活动状态。

- 2 - expired - 订阅已达到其到期日期,因此已停用。

- 3 - submitted - 开发人员已提交订阅请求,但管理员尚未批准或拒绝该请求。

- 4 - rejected - 管理员已拒绝订阅请求。

- 5 - cancelled - 开发人员或管理员已取消订阅。
DisplayName 字符串 订阅的显示名称。
CreatedDate dateTime 订阅的创建日期,采用 ISO 8601 格式:2014-06-24T16:25:00Z
CanBeCancelled boolean 当前用户是否可以取消订阅。
IsAwaitingApproval boolean 订阅是否待批。
StartDate dateTime 订阅的开始日期,采用 ISO 8601 格式:2014-06-24T16:25:00Z
ExpirationDate dateTime 订阅的到期日期,采用 ISO 8601 格式:2014-06-24T16:25:00Z
NotificationDate dateTime 订阅的通知日期,采用 ISO 8601 格式:2014-06-24T16:25:00Z
primaryKey 字符串 主要订阅密钥。 最大长度为 256 个字符。
secondaryKey 字符串 辅助订阅密钥。 最大长度为 256 个字符。
CanBeRenewed boolean 当前用户是否可以续订订阅。
HasExpired boolean 订阅是否已到期。
IsRejected boolean 是否已拒绝订阅请求。
CancelUrl 字符串 用于取消订阅的相对 URL。
RenewUrl 字符串 用于续订订阅的相对 URL。

订阅摘要

subscription summary 实体具有以下属性:

properties 类型 说明
Id 字符串 资源标识符。 唯一标识当前 API 管理服务实例中的订阅。 值是有效的相对 URL,采用 subscriptions/{sid} 格式,其中 {sid} 是订阅标识符。 此属性为只读。
DisplayName 字符串 订阅的显示名称

用户帐户信息

user account info 实体具有以下属性:

properties 类型 说明
FirstName 字符串 名字。 不得为空。 最大长度为 100 个字符。
LastName 字符串 姓氏。 不得为空。 最大长度为 100 个字符。
Email 字符串 电子邮件地址。 不得为空,且必须在服务实例中唯一。 最大长度为 254 个字符。
Password 字符串 用户帐户密码。
NameIdentifier 字符串 帐户标识符,与用户电子邮件相同。
ProviderName 字符串 身份验证提供程序名称。
IsBasicAccount boolean 如果此帐户使用电子邮件和密码注册,则为 true;如果此帐户使用提供程序注册,则为 false。

用户登录

user sign in 实体具有以下属性:

properties 类型 说明
Email 字符串 电子邮件地址。 不得为空,且必须在服务实例中唯一。 最大长度为 254 个字符。
Password 字符串 用户帐户密码。
ReturnUrl 字符串 用户单击“登录”时所在页面的 URL。
RememberMe boolean 是否保存当前用户的信息。
RegistrationEnabled boolean 是否已启用注册。
DelegationEnabled boolean 是否已启用委派登录。
DelegationUrl 字符串 委派登录 URL(如果已启用)。
SsoSignUpUrl 字符串 用户的单一登录 URL(如果存在)。
AuxServiceUrl 字符串 如果当前用户为管理员,则此项为指向 Azure 门户中服务实例的链接。
Providers 提供程序实体的集合 此用户的身份验证提供程序。
UserRegistrationTerms 字符串 用户必须在登录之前同意的条款。
UserRegistrationTermsEnabled boolean 是否启用条款。

用户注册

user sign up 实体具有以下属性:

properties 类型 说明
PasswordConfirm boolean 注册注册控件使用的值。
Password 字符串 用户帐户密码。
PasswordVerdictLevel 数字 注册注册控件使用的值。
UserRegistrationTerms 字符串 用户必须在登录之前同意的条款。
UserRegistrationTermsOptions 数字 注册注册控件使用的值。
ConsentAccepted boolean 注册注册控件使用的值。
Email 字符串 电子邮件地址。 不得为空,且必须在服务实例中唯一。 最大长度为 254 个字符。
FirstName 字符串 名字。 不得为空。 最大长度为 100 个字符。
LastName 字符串 姓氏。 不得为空。 最大长度为 100 个字符。
UserData 字符串 注册控件使用的值。
NameIdentifier 字符串 注册注册控件使用的值。
ProviderName 字符串 身份验证提供程序名称。

后续步骤

如需详细了解如何使用模板,请参阅如何使用模板自定义 API 管理开发人员门户