标准

API标准

标准的api AEMO用途是OpenAPI规范(OAS)。更多细节,请参阅OpenAPI-Specification:https://github.com/OAI/OpenAPI-Specification

设计原则

其余的方法使用的HTTP请求的特性使用这些设计原则:

  1. 在MarketNet或HTTPS协议提供服务

  1. 资源映射到uri的位置在一个层次结构,例如:服务主机/系统/ business_function。

    1. 层次结构的根代表web服务或API应用程序,并提供资源

    2. 下一阶段提供了特定的信息资源,

    3. 最后水平提供数据特定资源的更多细节,请参阅下面的URL格式。

  2. 提供多种有效载荷,如XML或JSON。

URL格式

API url在以下格式:

参数

描述

协议

HTTPS

web服务主机

的名称服务器托管服务或外部代理。

Business_function

API的名字——AEMO系统提供的服务,例如GeneratorRecall

资源

实体的业务功能例如/ listRecallPlans

查询字符串参数?

使用GET方法

例子:

格式示例

https://web服务主机/ business_function / APIversion /资源?查询字符串参数

互联网URL示例

https://apis.prod.www.thegroupof7.com: 9319 / ws / GeneratorRecall / 1.0 / listRecallPlans

MarketNet URL示例

https://apis.prod.marketnet.net.au: 9319 / ws / GeneratorRecall / 1.0 / listRecallPlans

头参数

描述

允许的值/例子

内容类型

HTTPS请求格式。

内容类型:application / json

接受

HTTPS响应格式。

接受:application / json

内容长度

内容文件的长度。发送请求时的值填充。

某某内容长度:

X-initiatingParticipantID

参与者标识

X-initiatingParticipantID: 123456

x市场

请求的市场类型适用。

x市场:气体

授权

指定包含Base64编码[1]基本HTTP身份验证用户名和密码。参与者的URM用冒号分隔符连接用户名和密码然后Base64编码。

授权:基本QFhQVC0wMDAwMzoyZWRmOGJhYS0wY2I0LTQwZjctOTIyMS0yODUxNmM4N2MxNjQ = (URM用户名“@xpt - 00003”和密码“2 edf8baa - 0 - cb4 - 40 - f7 - 9221 - 28516 - c87c164”)

方法

HTTPS方法

操作

细节

得到

检索数据

GET方法在URL的查询字符串参数。

GET方法没有content - type传入的HTTP请求。

并不是所有的AEMO api使用GET方法。

帖子

Post数据

POST方法有:

  • 没有在URL查询字符串参数。

  • 基本身份验证信息,用户名和密码编码和传入请求头。

  • HTTP请求头参数特定于API(如果有的话)。

  • 负载的例子:

{

“ParticipantId”:“PID”,

“StartDate可以”:“2017 - 11 - 01 t00:00:00 + 10”、“EndDate”:“2017 - 11 - 02 - t00:00:00 + 10”,

:“StationId PID6”,

:“DUID AEMO1”,

:“OutagePlanId MMS_GEN_OUT1”

}

删除

删除数据

DELETE方法在URL查询字符串参数。

HTTP响应代码

HTTP响应有:

  • 响应代码和描述,

    • 一个成功的请求表示到200年

    • 其他技术和有效载荷响应代码验证

  • 可选的有效载荷

状态码

e-Hub发送一个适当的HTTP响应代码和响应负载时的任何技术验证失败。

代码

条件

描述

200年

表明一个成功的请求。

好吧

400年

无效的API URI

无法找到服务端点引用(EPR)的URI,“断层”:“SystemMessageExceptionDump”

401年

无效的证书

没有BASICAuth在HTTP请求头信息

未经授权的

“异常”:“未经授权:无效的用户名或密码”

404年

未找到资源

“异常”:“端点URI没有找到资源。端点

URI:资源”

405年

无效的方法(例如GET代替POST)

“异常”:“输入请求的HTTP方法是无效的方法通过但操作(资源名称)只接受:(vValid方法)”

422年

业务验证失败

Unprocessable实体

429年

超过节流限制

“异常”:“入站请求的数量超过了节流限制;尝试一段时间后,“

500年

e-Hub操作但下游系统不可用或畸形的负载(JSON)

“异常”:“应用程序不可用”

交通管理

从过载保护后端服务,AEMO API平台实施交通限制。细节交通限制为每个单独的API,看到单个API的政策。

连接和读取超时设置

我们建议参与者使用以下设置当调用AEMO的api。

类型

问题

推荐设置

连接超时

不能连接到e-Hub的端点(例如e-Hub基础设施不可用)。

10秒

读取超时

连接的端点,但e-Hub没有配置的时间内作出回应。

30秒

术语表

缩写/学期

解释

API网关

网关在AEMO这边提供参与者的通信选项,可通过互联网或MarketNet。它使用资源和方法推动消息网关参与者的API

API

应用程序编程接口;一组明确定义的各种软件组件之间的通信方法。

API门户

,您可以查看可用的API,查看API文档(包括OpenAPI规格)和获得邮差集合。

企业社会责任

证书签名请求一块编码文本时给一个证书颁发机构申请TLS证书。它还包含中包含公钥证书。通常,同时创建一个私有密钥,密钥对。

eHub

由门户API, API的电力和天然气的网关。

JSON

JavaScript对象表示法

密钥对

TLS使用一种叫做公开密匙加密的技术,基于密钥对的概念。密钥对由公共和私人密钥加密数据。只是可能对应的公钥与私钥进行解密。

MarketNet

AEMO的私人数据网络连接。

MSATS

零售市场结算和传输系统

美洲国家组织

OpenAPI规范

参与者API网关

接口由参与者实现AEMO API将消息的地方。

参与者ID

注册参与者标识符

有效载荷

数据发送POST请求。有效载荷部分标题后。

PID

参与者ID

私钥

秘密私钥是一个文本文件最初用来生成证书签名请求(CSR),后来以确保并验证连接。

公钥

公钥是包括作为您的TLS证书的一部分,和私钥一起工作,以确保您的数据进行加密,验证,而不是篡改。任何访问公共密钥证书(即)可以验证数字签名是真实的,而无需知道的秘密私钥。

肥皂

简单对象访问协议

的文件

OpenAPI规范(OAS)定义的API。

TLS

传输层安全、通信安全加密协议提供的API。

WSDL

Web服务描述语言

XML

可扩展标记语言