调用CreateFile,在数据开发中创建一个文件。目前不支持调用该接口创建数据集成节点任务。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateFile |
要执行的操作。 |
FileFolderPath | String | 是 | 业务流程/第一个业务流程/MaxCompute/文件夹1/文件夹2 |
文件的路径。 |
ProjectId | Long | 是 | 10000 |
DataWorks工作空间的ID。您可以登录DataWorks控制台,进入工作空间配置页面获取工作空间ID。 该参数与ProjectIdentifier参数,二者必须设置其一,用来确定本次API调用操作的DataWorks工作空间。 |
FileName | String | 是 | 文件名 |
文件的名称。 |
FileDescription | String | 否 | 这里是文件描述 |
文件的描述信息。 |
FileType | Integer | 是 | 10 |
文件的代码类型。 常用的代码及其对应的文件类型包括6(Shell)、10(ODPS SQL)、11(ODPS MR)、24(ODPS Script)、99(虚拟节点)、221(PyODPS 2)、225(ODPS Spark)、227(EMR Hive)、228(EMR Spark)、229(EMR Spark SQL)、230(EMR MR)、239(OSS对象检查)、257(EMR Shell)、258(EMR Spark Shell)、259(EMR Presto)、260(EMR Impala)、900(实时同步)、1089(跨租户节点)、1091(Hologres开发)、1093(Hologres SQL)、1100(赋值节点)、1221(PyODPS 3)。 您可以调用ListFileType接口,查询文件的代码类型。 |
Owner | String | 否 | 1000000000001 |
文件责任人的阿里云用户ID。如果该参数为空,则默认使用调用者的阿里云用户ID。 |
Content | String | 否 | SHOW TABLES; |
文件代码内容,不同代码类型(fileType)的文件,代码格式不同。您可以在运维中心找到对应类型的任务,右键单击查看代码,查看具体的代码格式。 |
AutoRerunTimes | Integer | 否 | 3 |
出错自动重跑的次数,取值最大为10。 |
AutoRerunIntervalMillis | Integer | 否 | 120000 |
出错自动重跑时间间隔,单位为毫秒。最大为1800000毫秒(30分钟)。 该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>出错自动重跑”的”重跑间隔“配置对应。 控制台中“重跑间隔”的时间单位为分钟,请在调用时注意转换时间。 |
RerunMode | String | 否 | ALL_ALLOWED |
重跑属性。取值如下:
该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>重跑属性”配置内容对应。 |
Stop | Boolean | 否 | false |
是否暂停调度,取值如下:
该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>调度类型”配置为”暂停调度“时对应。 |
ParaValue | String | 否 | a=x b=y |
调度参数。多个参数之间用空格进行分割。 该参数与DataWorks控制台中,数据开发任务的“调度配置>参数”对应。您可以参考调度参数配置。 |
StartEffectDate | Long | 否 | 1671608450000 |
开始自动调度的毫秒时间戳。 该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>生效日期”配置的开始时间的毫秒时间戳对应。 |
EndEffectDate | Long | 否 | 1671694850000 |
停止自动调度的时间戳,单位为毫秒。 该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>生效日期”配置的结束时间的毫秒时间戳对应。 |
CronExpress | String | 否 | 00 05 00 * * ? |
周期调度的cron表达式,该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>cron表达式”对应。配置完“调度周期”及“定时调度时间”后,DataWorks会自动生成相应cron表达式。 示例如下:
由于DataWorks调度系统的规则,cron表达式有以下限制:
|
CycleType | String | 否 | DAY |
调度周期的类型,包括NOT_DAY(分钟、小时)和DAY(日、周、月)。 该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>调度周期”对应。 |
DependentType | String | 否 | NONE |
依赖上一周期的方式。取值如下:
|
DependentNodeIdList | String | 否 | abc |
依赖上一周期的节点列表。 |
InputList | String | 是 | project_root,project.file1,project.001_out |
文件依赖的上游文件的输出名称,多个输出使用英文逗号(,)分隔。 该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖“选择”同周期“时的”父节点输出名称”对应。 |
ProjectIdentifier | String | 否 | dw_project |
DataWorks工作空间的名称。您可以登录DataWorks控制台,进入工作空间配置页面获取工作空间名称。 该参数与ProjectId参数,二者必须设置其一,用来确定本次API调用操作的DataWorks工作空间。 |
ResourceGroupIdentifier | String | 否 | group_375827434852437 |
文件发布成任务后,任务执行时对应的资源组。您可以调用ListResourceGroups获取工作空间可用的资源组列表。 |
ResourceGroupId | Long | 否 | 375827434852437 |
该字段已废弃,请勿使用。 文件发布成任务后,任务执行时对应的资源组。对应页面上调度配置>资源属性>调度资源组的配置。与ResourceGroupIdentifier二者设置其一即可。 您可以通过ListResourceGroups接口获取工作空间可用的资源组列表。ResourceGroupType传1,拿到结果后取出ID字段。 |
ConnectionName | String | 否 | odps_first |
文件发布成任务后,任务执行时连接的数据源。 您可以调用UpdateDataSource接口获取工作空间可用的数据源列表。 |
AutoParsing | Boolean | 否 | true |
文件是否开启自动解析功能。取值如下:
该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖”选择“同周期”时的“代码解析”对应。 |
SchedulerType | String | 否 | NORMAL |
调度的类型,取值如下:
|
AdvancedSettings | String | 否 | {"queue":"default","SPARK_CONF":"--conf spark.driver.memory=2g"} |
任务的高级配置。 该参数与DataWorks控制台中,EMR Spark Streaming和EMR Streaming SQL数据开发任务,编辑页面右侧导航栏的“高级设置“对应。 当前仅EMR Spark Streaming和EMR Streaming SQL任务支持配置该参数,并且参数为JSON格式。 |
StartImmediately | Boolean | 否 | true |
发布后是否立即启动。 该参数与DataWorks控制台中,EMR Spark Streaming和EMR Streaming SQL数据开发任务,编辑页面右侧导航栏的“配置>时间属性>启动方式“对应。 |
InputParameters | String | 否 | [{"ValueSource": "project_001.first_node:bizdate_param","ParameterName": "bizdate_input"}] |
节点的上下文输入参数。参数为JSON格式,包含的字段可参考GetFile接口返回值中的InputContextParameterList参数结构。 该参数与DataWorks控制台中,数据开发任务的“调度配置>节点上下文>本节点输入参数“对应。 |
OutputParameters | String | 否 | [{"Type": 1,"Value": "${bizdate}","ParameterName": "bizdate_param"}] |
节点的上下文输出参数。参数为JSON格式,包含的字段可参考GetFile接口返回值中的OutputContextParameterList参数结构。 该参数与DataWorks控制台中,数据开发任务的“调度配置>节点上下文>本节点输出参数“对应。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
HttpStatusCode | Integer | 200 |
HTTP状态码。 |
Data | Long | 1000001 |
文件创建成功后的ID。 |
RequestId | String | 0000-ABCD-EFG |
本次调用的唯一ID。出现错误后,您可以根据该ID排查问题。 |
ErrorMessage | String | The connection does not exist. |
错误信息。 |
Success | Boolean | true |
调用是否成功。取值如下:
|
ErrorCode | String | Invalid.Tenant.ConnectionNotExists |
错误码。 |
示例
请求示例
http(s)://[Endpoint]/?Action=CreateFile
&FileFolderPath=业务流程/第一个业务流程/MaxCompute/文件夹1/文件夹2
&ProjectId=10000
&FileName=文件名
&FileDescription=这里是文件描述
&FileType=10
&Owner=1000000000001
&Content=SHOW TABLES;
&AutoRerunTimes=3
&AutoRerunIntervalMillis=120000
&RerunMode=ALL_ALLOWED
&Stop=false
&ParaValue=a=x b=y
&StartEffectDate=1671608450000
&EndEffectDate=1671694850000
&CronExpress=00 05 00 * * ?
&CycleType=DAY
&DependentType=NONE
&DependentNodeIdList=abc
&InputList=project_root,project.file1,project.001_out
&ProjectIdentifier=dw_project
&ResourceGroupIdentifier=group_375827434852437
&ResourceGroupId=375827434852437
&ConnectionName=odps_first
&AutoParsing=true
&SchedulerType=NORMAL
&AdvancedSettings={"queue":"default","SPARK_CONF":"--conf spark.driver.memory=2g"}
&StartImmediately=true
&InputParameters=[{"ValueSource": "project_001.first_node:bizdate_param","ParameterName": "bizdate_input"}]
&OutputParameters=[{"Type": 1,"Value": "${bizdate}","ParameterName": "bizdate_param"}]
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateFileResponse>
<HttpStatusCode>200</HttpStatusCode>
<Data>1000001</Data>
<RequestId>0000-ABCD-EFG</RequestId>
<ErrorMessage>The connection does not exist.</ErrorMessage>
<Success>true</Success>
<ErrorCode>Invalid.Tenant.ConnectionNotExists</ErrorCode>
</CreateFileResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"HttpStatusCode" : 200,
"Data" : 1000001,
"RequestId" : "0000-ABCD-EFG",
"ErrorMessage" : "The connection does not exist.",
"Success" : true,
"ErrorCode" : "Invalid.Tenant.ConnectionNotExists"
}
错误码
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. | 系统内部错误,请稍后再试。 |
访问错误中心查看更多错误码。