调用CreateDataServiceApi创建数据服务API。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateDataServiceApi | 系统规定参数。取值:CreateDataServiceApi。 |
TenantId | Long | 是 | 10001 | 租户ID。 |
ProjectId | Long | 是 | 10000 | 工作空间的ID。 |
ApiName | String | 是 | 测试API名称 | API的名称,支持汉字、英文、数字和下划线(_),且只能以英文和汉字开头,4~50个字符。 |
GroupId | String | 是 | 业务流程ID | 业务流程的ID。 |
ApiMode | Integer | 是 | 0 | API的类型,可选枚举值包括0(向导API)、1(脚本API)和2(注册API)。 |
RequestMethod | Integer | 是 | 0 | API的请求方式,可选枚举值包括0(GET)、1(POST)、2(PUT)和3(DELETE)。向导和脚本API支持GET和POST。注册API支持GET、POST、PUT和DELETE。 |
ResponseContentType | Integer | 是 | 0 | API的返回数据类型,可选枚举值包括0(JSON)和1(XML)。向导和脚本API支持JSON,注册API支持JSON和XML。 |
Timeout | Integer | 是 | 10000 | 超时时间,单位为毫秒(ms),取值范围为 (0, 30000]。 ) |
VisibleRange | Integer | 是 | 0 | 可见范围,可选枚举值包括0(工作空间)和1(私有)。 |
Protocols | String | 是 | 0,1 | API的协议,可选枚举值包括0(HTTP)和1(HTTPS)。支持多个值,多个值之间使用英文逗号(,)分隔。 |
WizardDetails | String | 否 | {"isPagedResponse":true,"wizardConnection":{"connectionId":122786,"tableName":"person"},"wizardRequestParameters":[{"columnName":"id","defaultValue":"","exampleValue":"1","isRequiredParameter":true,"parameterDataType":2,"parameterDescription":"","parameterName":"id","parameterOperator":0,"parameterPosition":0}],"wizardResponseParameters":[{"columnName":"id","exampleValue":"11","parameterDataType":2,"parameterDescription":"","parameterName":"id"}]} | 向导API的详情,请参见GetDataServiceApi接口wizardDetails字段的JSON String。 |
ScriptDetails | String | 否 | {"isPagedResponse":false,"script":"select id as id1, name as name1 from person where id=${inputid}","scriptConnection":{"connectionId":122786,"tableName":"person"},"scriptRequestParameters":[{"defaultValue":"","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"inputid","parameterOperator":0,"parameterPosition":1}],"scriptResponseParameters":[{"exampleValue":"","parameterDataType":0,"parameterDescription":"","parameterName":"id1"},{"exampleValue":"","parameterDataType":0,"parameterDescription":"","parameterName":"name1"}]} | 脚本API的详情,请参见GetDataServiceApi接口scriptDetails字段的JSON String。 |
RegistrationDetails | String | 否 | {"failedResultSample":"fail","registrationErrorCodes":[{"errorCode":"e1","errorMessage":"msg1","errorSolution":"sol1"},{"errorCode":"e2","errorMessage":"msg2","errorSolution":"sol2"}],"registrationRequestParameters":[{"columnName":"","defaultValue":"","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"id","parameterOperator":0,"parameterPosition":1},{"columnName":"","defaultValue":"xx","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"cc","parameterOperator":2,"parameterPosition":2}],"serviceContentType":1,"serviceHost":"http://www.baidu.com","servicePath":"/[uid]","serviceRequestBodyDescription":"body","successfulResultSample":"success"} | 注册API的详情,请参见GetDataServiceApi接口registrationDetails字段的JSON String。 |
ApiPath | String | 是 | /test/1 | API的路径,支持英文、数字、下划线(_)和连字符(-),且只能以斜线(/)开头,不能超过200个字符。 |
ApiDescription | String | 是 | 测试API描述 | API的描述信息。 |
FolderId | Long | 否 | 0 | 创建API的目标文件夹ID,业务流程下根文件夹ID等于0,用户自建文件夹ID大于0。 |
SqlMode | Long | 否 | 0 |
|
ResourceGroupId | Long | 否 | 3242432423 | 独享资源组ID。 |
RequestContentType | Integer | 否 | 0 | 请求数据类型。
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
HttpStatusCode | Integer | 200 | HTTP状态码。 |
Data | Long | 100003 | 创建的API ID。 |
ErrorMessage | String | The connection does not exist. | 错误信息。 |
RequestId | String | 0000-ABCD-EFG**** | 请求ID,一次请求的唯一标识。 |
ErrorCode | String | Invalid.Tenant.ConnectionNotExists | 错误码。 |
Success | Boolean | true | 调用是否成功。 |
示例
请求示例
http(s)://[Endpoint]/?Action=CreateDataServiceApi
&TenantId=10001
&ProjectId=10000
&ApiName=测试API名称
&GroupId=业务流程ID
&ApiMode=0
&RequestMethod=0
&ResponseContentType=0
&Timeout=10000
&VisibleRange=0
&Protocols=0,1
&WizardDetails={"isPagedResponse":true,"wizardConnection":{"connectionId":122786,"tableName":"person"},"wizardRequestParameters":[{"columnName":"id","defaultValue":"","exampleValue":"1","isRequiredParameter":true,"parameterDataType":2,"parameterDescription":"","parameterName":"id","parameterOperator":0,"parameterPosition":0}],"wizardResponseParameters":[{"columnName":"id","exampleValue":"11","parameterDataType":2,"parameterDescription":"","parameterName":"id"}]}
&ScriptDetails={"isPagedResponse":false,"script":"select id as id1, name as name1 from person where id=${inputid}","scriptConnection":{"connectionId":122786,"tableName":"person"},"scriptRequestParameters":[{"defaultValue":"","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"inputid","parameterOperator":0,"parameterPosition":1}],"scriptResponseParameters":[{"exampleValue":"","parameterDataType":0,"parameterDescription":"","parameterName":"id1"},{"exampleValue":"","parameterDataType":0,"parameterDescription":"","parameterName":"name1"}]}
&RegistrationDetails={"failedResultSample":"fail","registrationErrorCodes":[{"errorCode":"e1","errorMessage":"msg1","errorSolution":"sol1"},{"errorCode":"e2","errorMessage":"msg2","errorSolution":"sol2"}],"registrationRequestParameters":[{"columnName":"","defaultValue":"","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"id","parameterOperator":0,"parameterPosition":1},{"columnName":"","defaultValue":"xx","exampleValue":"","isRequiredParameter":true,"parameterDataType":0,"parameterDescription":"","parameterName":"cc","parameterOperator":2,"parameterPosition":2}],"serviceContentType":1,"serviceHost":"http://www.baidu.com","servicePath":"/[uid]","serviceRequestBodyDescription":"body","successfulResultSample":"success"}
&ApiPath=/test/1
&ApiDescription=测试API描述
&FolderId=0
&SqlMode=0
&ResourceGroupId=3242432423
&RequestContentType=0
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateDataServiceApiResponse>
<HttpStatusCode>200</HttpStatusCode>
<Data>100003</Data>
<ErrorMessage>The connection does not exist.</ErrorMessage>
<RequestId>0000-ABCD-EFG****</RequestId>
<ErrorCode>Invalid.Tenant.ConnectionNotExists</ErrorCode>
<Success>true</Success>
</CreateDataServiceApiResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"HttpStatusCode" : 200,
"Data" : 100003,
"ErrorMessage" : "The connection does not exist.",
"RequestId" : "0000-ABCD-EFG****",
"ErrorCode" : "Invalid.Tenant.ConnectionNotExists",
"Success" : true
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
429 | Throttling.Api | The request for this resource has exceeded your available limit. | 对该资源的请求已超过您的可用上限。 |
429 | Throttling.System | The DataWorks system is busy. Try again later. | DataWorks系统繁忙,请稍后再试。 |
429 | Throttling.User | Your request is too frequent. Try again later. | 您的请求过于频繁,请尝试放缓请求速度。 |
500 | InternalError.System | An internal system error occurred. Try again later. | 系统内部错误,请稍后再试。 |
500 | InternalError.UserId.Missing | An internal system error occurred. Try again later. | 系统内部错误,请稍后再试。 |
访问错误中心查看更多错误码。