调用UpdateFile接口,更新已创建的文件。

调试或调用该接口时,填写的参数必须与该节点原本的文件配置不同。例如,源节点的某参数值为A,则需要变更为B后再提交。如果仍填写A,会报invalid异常。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String UpdateFile

要执行的操作。

FileFolderPath String 业务流程/第一个业务流程/数据集成/文件夹1/文件夹2

文件所在的路径。

ProjectId Long 10000

DataWorks工作空间的ID。您可以登录DataWorks控制台,进入工作空间管理页面获取ID。

FileName String ods_user_info_d

文件的名称。您可以通过重新设置FileName的值来修改文件名称。

例如,使用ListFiles接口查询目标目录下的文件ID,通过UpdateFile接口,输入查询的文件ID至FileId参数,并配置FileName的参数值,即可修改相应文件的名称。

FileDescription String 这里是文件描述

文件的描述。

Content String SELECT "1";

文件代码内容,不同代码类型(fileType)的文件,代码格式不同。您可以在运维中心,右键单击对应类型的任务,选择查看代码,查看具体的代码格式。

RegionId String cn-zhangjiakou

服务所在的地域。例如,华东2(上海)为cn-shanghai,华北3(张家口)为cn-zhangjiakou。您无需填写RegionId,会根据调用的Endpoint自动解析。

AutoRerunTimes Integer 3

文件出错后,自动重跑的次数。

AutoRerunIntervalMillis Integer 120000

出错自动重跑时间间隔,单位为毫秒。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>出错自动重跑”的”重跑间隔“配置对应。

控制台中“重跑间隔”的时间单位为分钟,请在调用时注意转换时间。

RerunMode String ALL_ALLOWED

重跑属性。取值如下:

  • ALL_ALLOWED:运行成功或失败后皆可重跑。
  • FAILURE_ALLOWED:运行成功后不可重跑,运行失败后可以重跑。
  • ALL_DENIED:运行成功或失败皆不可重跑。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>重跑属性”配置内容对应。

Stop Boolean false

是否暂停调度,取值如下:

  • true:暂停调度。
  • false:不暂停调度。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>调度类型”配置为”暂停调度“时对应。

ParaValue String x=a y=b z=c

调度参数。

该参数与DataWorks控制台中,数据开发任务的“调度配置>参数”对应。您可以参考调度参数配置。

StartEffectDate Long 936923400000

开始自动调度的毫秒时间戳。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>生效日期”配置的开始时间的毫秒时间戳对应。

EndEffectDate Long 4155787800000

停止自动调度的时间戳,单位为毫秒。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>生效日期”配置的结束时间的毫秒时间戳对应。

CronExpress String 00 00-59/5 1-23 * * ?

周期调度的cron表达式,该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>cron表达式”对应。配置完“调度周期”及“定时调度时间”后,DataWorks会自动生成相应cron表达式。

示例如下:

  • 每天凌晨5点30分定时调度:00 30 05 * * ?
  • 每个小时的第15分钟定时调度:00 15 * * * ?
  • 每隔十分钟调度一次:00 00/10 * * * ?
  • 每天8点到17点,每个十分钟调度一次:00 00-59/10 8-23 * * * ?
  • 每月的1日0点20分自动调度:00 20 00 1 * ?
  • 从1月1日0点10分开始,每过3个月调度一次:00 10 00 1 1-12/3 ?
  • 每周二、周五的0点5分自动调度:00 05 00 * * 2,5

由于DataWorks调度系统的规则,cron表达式有以下限制:

  • 最短调度间隔时间为5分钟。
  • 每天最早调度时间为0点5分。
CycleType String NOT_DAY

调度周期的类型,包括NOT_DAY(分钟、小时)和DAY(日、周、月)。

该参数与DataWorks控制台中,数据开发任务的“调度配置>时间属性>调度周期”对应。

DependentType String USER_DEFINE

依赖上一周期的方式。取值如下:

  • SELF:依赖项选择本节点。
  • CHILD:依赖项选择一级子节点。
  • USER_DEFINE:依赖项选择其他节点。
  • NONE:未选择依赖项,即不会依赖上一周期。
DependentNodeIdList String 5,10,15,20

当DependentType参数配置为USER_DEFINE时,用于设置当前文件具体依赖的节点ID。依赖多个节点时,使用英文逗号(,)分隔。

该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖”配置为“上一周期”后,依赖项选择”其他节点“时配置的内容对应。

InputList String project_root,project.file1,project.001_out

文件依赖的上游文件的输出名称。依赖多个输出时,使用英文逗号(,)分隔。

该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖“选择”同周期“时的”父节点输出名称”对应。

ProjectIdentifier String dw_project

DataWorks工作空间的名称。您可以登录DataWorks控制台,进入工作空间配置页面获取工作空间名称。

该参数与ProjectId参数,二者必须设置其一,用来确定本次API调用操作的DataWorks工作空间。

FileId Long 100000001

文件的ID。您可以调用ListFiles接口获取文件ID。

OutputList String dw_project.ods_user_info_d

文件的输出。

该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖“选择”同周期“时的”本节点的输出名称”对应。

ResourceGroupIdentifier String default_group

文件发布成任务后,任务执行时对应的资源组。您可以调用ListResourceGroups获取工作空间可用的资源组列表。

ConnectionName String odps_first

文件对应任务执行时,任务使用的数据源标识符。您可以调用ListDataSources获取可用的数据源列表。

Owner String 18023848927592

文件所有者的用户ID。

AutoParsing Boolean true

文件是否开启自动解析功能。取值如下:

  • true:文件会自动解析代码。
  • false:文件不会自动解析代码。

该参数与DataWorks控制台中,数据开发任务的“调度配置>调度依赖”选择“同周期”时的“代码解析”对应。

SchedulerType String NORMAL

调度的类型,取值如下:

  • NORMAL:正常调度任务。
  • MANUAL:手动任务,不会被日常调度,对应手动业务流程下的节点。
  • PAUSE:暂停任务。
  • SKIP:空跑任务,被日常调度,但启动调度时直接被置为成功。
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

发布后是否立即启动。取值如下:

  • true:发布后立即启动。
  • false:发布后暂不启动。

该参数与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状态码。

ErrorMessage String The connection does not exist.

错误信息。

RequestId String 0000-ABCD-EFGH-IJKLMNOPQ

本次调用的唯一ID。出现错误后,您可以根据该ID排查问题。

ErrorCode String Invalid.Tenant.ConnectionNotExists

错误码。

Success Boolean true

调用是否成功。取值如下:

  • true:调用成功。
  • false:调用失败。

示例

请求示例

http(s)://[Endpoint]/?Action=UpdateFile
&FileFolderPath=业务流程/第一个业务流程/数据集成/文件夹1/文件夹2
&ProjectId=10000
&FileName=ods_user_info_d
&FileDescription=这里是文件描述
&Content=SELECT "1";
&AutoRerunTimes=3
&AutoRerunIntervalMillis=120000
&RerunMode=ALL_ALLOWED
&Stop=false
&ParaValue=x=a y=b z=c
&StartEffectDate=936923400000
&EndEffectDate=4155787800000
&CronExpress=00 00-59/5 1-23 * * ?
&CycleType=NOT_DAY
&DependentType=USER_DEFINE
&DependentNodeIdList=5,10,15,20
&InputList=project_root,project.file1,project.001_out
&ProjectIdentifier=dw_project
&FileId=100000001
&OutputList=dw_project.ods_user_info_d
&ResourceGroupIdentifier=default_group
&ConnectionName=odps_first
&Owner=18023848927592
&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

<UpdateFileResponse>
    <HttpStatusCode>200</HttpStatusCode>
    <ErrorMessage>The connection does not exist.</ErrorMessage>
    <RequestId>0000-ABCD-EFGH-IJKLMNOPQ</RequestId>
    <ErrorCode>Invalid.Tenant.ConnectionNotExists</ErrorCode>
    <Success>true</Success>
</UpdateFileResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "HttpStatusCode" : 200,
  "ErrorMessage" : "The connection does not exist.",
  "RequestId" : "0000-ABCD-EFGH-IJKLMNOPQ",
  "ErrorCode" : "Invalid.Tenant.ConnectionNotExists",
  "Success" : true
}

错误码

HttpCode 错误码 错误信息 描述
403 Forbidden.Access Access is forbidden. Please first activate DataWorks Enterprise Edition or Flagship Edition. 您被限制访问,请开通DataWorks企业版或旗舰版。
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. 系统内部错误,请稍后再试。

访问错误中心查看更多错误码。