创建表单业务数据

调用本接口创建单条表单、流程表单的业务数据对象。

重要

为了更进一步提升接口质量以及用户体验,我们对本接口文档做出如下调整:

  • 自 2024 年 8 月 1 日起,本接口文档将会被迁移至历史文档目录。

  • 氚云接口不再支持新应用接入,已接入应用可继续使用,后续若需要接入氚云接口,请使用氚云开发者手册

权限

要调用此API,需要以下权限之一。

应用类型

是否支持

权限

API Explorer调试

企业内部应用

支持

氚云数据管理权限

API Explorer

第三方企业应用

支持

氚云数据管理权限

API Explorer

第三方个人应用

暂不支持

氚云数据管理权限

暂不支持

请求方法

POST /v1.0/h3yun/forms/instances HTTP/1.1
Host:api.dingtalk.com
x-acs-dingtalk-access-token:String
Content-Type:application/json

{
  "schemaCode" : "String",
  "opUserId" : "String",
  "bizObjectJson" : "String",
  "isDraft" : Boolean
}

Header参数

名称

类型

是否必填

描述

x-acs-dingtalk-access-token

String

调用该接口的访问凭证。

Body参数

名称

类型

是否必填

描述

schemaCode

String

表单编码。

opUserId

String

操作用户ID。

bizObjectJson

String

json格式的业务数据。JSON数组的key只可以调用获取表单对象结构接口获取。

例如:

{
    "F0000010": "0000004",
    "F0000011": "王五1",
    "F0000012": "D1级客户",
    "F0000013": 7000,
    "D000183Fcd15f3a51e624bbc9945392d190b6aa8": [
        {
            "F0000014": "里斯",
            "F0000015": 156666365656,
            "F0000016": "技术部",
            "F0000017": "经理1",
            "F0000018": "男",
            "F0000019": "lgbxunmi@dd.com",
            "F0000020": true,
            "F0000021": "测试数据"
        }
    ]
}

isDraft

Boolean

是否是草稿,取值:

  • true:草稿数据

  • false:生效数据

返回参数

名称

类型

描述

code

String

状态码。

message

String

状态码描述。

data

Object

返回结果。

schemaCode

String

表单编码。

formUsageType

String

数据模型,取值:

  • DataList:本地存储的列表库

  • Workflow:工作流应用

bizObjectId

String

表单业务数据ID。

processInstanceId

String

流程实例ID。

示例

请求示例

POST /v1.0/h3yun/forms/instances HTTP/1.1
Host:api.dingtalk.com
x-acs-dingtalk-access-token:bef2c84xxx
Content-Type:application/json

{
  "schemaCode" : "xxx42f92824b2d497fb4ddda0e6f2134d8",
  "opUserId" : "aea4d7a7-dxxx",
  "bizObjectJson" : "{\\\"F0000010\\\": \\\"0000004\\\", \\\"F0000011\\\": \\\"王五1\\\",\\\"F0000012\\\": \\\"D1级客户\\\",\\\"F0000013\\\": 7000,\\\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\\\": [{\\\"F0000014\\\": \\\"里斯\\\",\\\"F0000015\\\": 156666365656, \\\"F0000016\\\": \\\"技术部\\\",\\\"F0000017\\\": \\\"经理1\\\",\\\"F0000018\\\":\\\"男\\\",\\\"F0000019\\\": \\\"lgbxunmi@dd.com\\\", \\\"F0000020\\\": true, \\\"F0000021\\\": \\\"测试数据\\\"}]}",
  "isDraft" : false
}
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;

import com.aliyun.tea.*;
import com.aliyun.teautil.*;
import com.aliyun.teautil.models.*;
import com.aliyun.dingtalkh3yun_1_0.*;
import com.aliyun.dingtalkh3yun_1_0.models.*;
import com.aliyun.teaopenapi.*;
import com.aliyun.teaopenapi.models.*;

public class Sample {

    /**
     * 使用 Token 初始化账号Client
     * @return Client
     * @throws Exception
     */
    public static com.aliyun.dingtalkh3yun_1_0.Client createClient() throws Exception {
        Config config = new Config();
        config.protocol = "https";
        config.regionId = "central";
        return new com.aliyun.dingtalkh3yun_1_0.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.dingtalkh3yun_1_0.Client client = Sample.createClient();
        CreateBizObjectHeaders createBizObjectHeaders = new CreateBizObjectHeaders();
        createBizObjectHeaders.xAcsDingtalkAccessToken = "<your access token>";
        CreateBizObjectRequest createBizObjectRequest = new CreateBizObjectRequest()
                .setSchemaCode("xxx42f92824b2d497fb4ddda0e6f2134d8")
                .setOpUserId("aea4d7a7-dxxx")
                .setBizObjectJson("{\"F0000010\": \"0000004\", \"F0000011\": \"王五1\",\"F0000012\": \"D1级客户\",\"F0000013\": 7000,\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\": [{\"F0000014\": \"里斯\",\"F0000015\": 156666365656, \"F0000016\": \"技术部\",\"F0000017\": \"经理1\",\"F0000018\":\"男\",\"F0000019\": \"lgbxunmi@dd.com\", \"F0000020\": true, \"F0000021\": \"测试数据\"}]}")
                .setIsDraft(false);
        try {
            client.createBizObjectWithOptions(createBizObjectRequest, createBizObjectHeaders, new RuntimeOptions());
        } catch (TeaException err) {
            if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
                // err 中含有 code 和 message 属性,可帮助开发定位问题
            }

        } catch (Exception _err) {
            TeaException err = new TeaException(_err.getMessage(), _err);
            if (!com.aliyun.teautil.Common.empty(err.code) && !com.aliyun.teautil.Common.empty(err.message)) {
                // err 中含有 code 和 message 属性,可帮助开发定位问题
            }

        }        
    }
}
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sys

from typing import List

from alibabacloud_dingtalk.h3yun_1_0.client import Client as dingtalkh3yun_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.h3yun_1_0 import models as dingtalkh_3yun__1__0_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClient


class Sample:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> dingtalkh3yun_1_0Client:
        """
        使用 Token 初始化账号Client
        @return: Client
        @throws Exception
        """
        config = open_api_models.Config()
        config.protocol = 'https'
        config.region_id = 'central'
        return dingtalkh3yun_1_0Client(config)

    @staticmethod
    def main(
        args: List[str],
    ) -> None:
        client = Sample.create_client()
        create_biz_object_headers = dingtalkh_3yun__1__0_models.CreateBizObjectHeaders()
        create_biz_object_headers.x_acs_dingtalk_access_token = '<your access token>'
        create_biz_object_request = dingtalkh_3yun__1__0_models.CreateBizObjectRequest(
            schema_code='xxx42f92824b2d497fb4ddda0e6f2134d8',
            op_user_id='aea4d7a7-dxxx',
            biz_object_json='{"F0000010": "0000004", "F0000011": "王五1","F0000012": "D1级客户","F0000013": 7000,"D000183Fcd15f3a51e624bbc9945392d190b6aa8": [{"F0000014": "里斯","F0000015": 156666365656, "F0000016": "技术部","F0000017": "经理1","F0000018":"男","F0000019": "lgbxunmi@dd.com", "F0000020": true, "F0000021": "测试数据"}]}',
            is_draft=False
        )
        try:
            client.create_biz_object_with_options(create_biz_object_request, create_biz_object_headers, util_models.RuntimeOptions())
        except Exception as err:
            if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
                # err 中含有 code 和 message 属性,可帮助开发定位问题
                pass

    @staticmethod
    async def main_async(
        args: List[str],
    ) -> None:
        client = Sample.create_client()
        create_biz_object_headers = dingtalkh_3yun__1__0_models.CreateBizObjectHeaders()
        create_biz_object_headers.x_acs_dingtalk_access_token = '<your access token>'
        create_biz_object_request = dingtalkh_3yun__1__0_models.CreateBizObjectRequest(
            schema_code='xxx42f92824b2d497fb4ddda0e6f2134d8',
            op_user_id='aea4d7a7-dxxx',
            biz_object_json='{"F0000010": "0000004", "F0000011": "王五1","F0000012": "D1级客户","F0000013": 7000,"D000183Fcd15f3a51e624bbc9945392d190b6aa8": [{"F0000014": "里斯","F0000015": 156666365656, "F0000016": "技术部","F0000017": "经理1","F0000018":"男","F0000019": "lgbxunmi@dd.com", "F0000020": true, "F0000021": "测试数据"}]}',
            is_draft=False
        )
        try:
            await client.create_biz_object_with_options_async(create_biz_object_request, create_biz_object_headers, util_models.RuntimeOptions())
        except Exception as err:
            if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):
                # err 中含有 code 和 message 属性,可帮助开发定位问题
                pass


if __name__ == '__main__':
    Sample.main(sys.argv[1:])
<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Dingtalk\Vh3yun_1_0\Dingtalk;
use \Exception;
use AlibabaCloud\Tea\Exception\TeaError;
use AlibabaCloud\Tea\Utils\Utils;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dingtalk\Vh3yun_1_0\Models\CreateBizObjectHeaders;
use AlibabaCloud\SDK\Dingtalk\Vh3yun_1_0\Models\CreateBizObjectRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;

class Sample {

    /**
     * 使用 Token 初始化账号Client
     * @return Dingtalk Client
     */
    public static function createClient(){
        $config = new Config([]);
        $config->protocol = "https";
        $config->regionId = "central";
        return new Dingtalk($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($args){
        $client = self::createClient();
        $createBizObjectHeaders = new CreateBizObjectHeaders([]);
        $createBizObjectHeaders->xAcsDingtalkAccessToken = "<your access token>";
        $createBizObjectRequest = new CreateBizObjectRequest([
            "schemaCode" => "xxx42f92824b2d497fb4ddda0e6f2134d8",
            "opUserId" => "aea4d7a7-dxxx",
            "bizObjectJson" => "{\"F0000010\": \"0000004\", \"F0000011\": \"王五1\",\"F0000012\": \"D1级客户\",\"F0000013\": 7000,\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\": [{\"F0000014\": \"里斯\",\"F0000015\": 156666365656, \"F0000016\": \"技术部\",\"F0000017\": \"经理1\",\"F0000018\":\"男\",\"F0000019\": \"lgbxunmi@dd.com\", \"F0000020\": true, \"F0000021\": \"测试数据\"}]}",
            "isDraft" => false
        ]);
        try {
            $client->createBizObjectWithOptions($createBizObjectRequest, $createBizObjectHeaders, new RuntimeOptions([]));
        }
        catch (Exception $err) {
            if (!($err instanceof TeaError)) {
                $err = new TeaError([], $err->getMessage(), $err->getCode(), $err);
            }
            if (!Utils::empty_($err->code) && !Utils::empty_($err->message)) {
                // err 中含有 code 和 message 属性,可帮助开发定位问题
            }
        }
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}
Sample::main(array_slice($argv, 1));
// This file is auto-generated, don't edit it. Thanks.
package main

import (
  "os"
  util  "github.com/alibabacloud-go/tea-utils/service"
  dingtalkh3yun_1_0  "github.com/alibabacloud-go/dingtalk/h3yun_1_0"
  openapi  "github.com/alibabacloud-go/darabonba-openapi/client"
  "github.com/alibabacloud-go/tea/tea"
)


/**
 * 使用 Token 初始化账号Client
 * @return Client
 * @throws Exception
 */
func CreateClient () (_result *dingtalkh3yun_1_0.Client, _err error) {
  config := &openapi.Config{}
  config.Protocol = tea.String("https")
  config.RegionId = tea.String("central")
  _result = &dingtalkh3yun_1_0.Client{}
  _result, _err = dingtalkh3yun_1_0.NewClient(config)
  return _result, _err
}

func _main (args []*string) (_err error) {
  client, _err := CreateClient()
  if _err != nil {
    return _err
  }

  createBizObjectHeaders := &dingtalkh3yun_1_0.CreateBizObjectHeaders{}
  createBizObjectHeaders.XAcsDingtalkAccessToken = tea.String("<your access token>")
  createBizObjectRequest := &dingtalkh3yun_1_0.CreateBizObjectRequest{
    SchemaCode: tea.String("xxx42f92824b2d497fb4ddda0e6f2134d8"),
    OpUserId: tea.String("aea4d7a7-dxxx"),
    BizObjectJson: tea.String("{\"F0000010\": \"0000004\", \"F0000011\": \"王五1\",\"F0000012\": \"D1级客户\",\"F0000013\": 7000,\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\": [{\"F0000014\": \"里斯\",\"F0000015\": 156666365656, \"F0000016\": \"技术部\",\"F0000017\": \"经理1\",\"F0000018\":\"男\",\"F0000019\": \"lgbxunmi@dd.com\", \"F0000020\": true, \"F0000021\": \"测试数据\"}]}"),
    IsDraft: tea.Bool(false),
  }
  tryErr := func()(_e error) {
    defer func() {
      if r := tea.Recover(recover()); r != nil {
        _e = r
      }
    }()
    _, _err = client.CreateBizObjectWithOptions(createBizObjectRequest, createBizObjectHeaders, &util.RuntimeOptions{})
    if _err != nil {
      return _err
    }

    return nil
  }()

  if tryErr != nil {
    var err = &tea.SDKError{}
    if _t, ok := tryErr.(*tea.SDKError); ok {
      err = _t
    } else {
      err.Message = tea.String(tryErr.Error())
    }
    if !tea.BoolValue(util.Empty(err.Code)) && !tea.BoolValue(util.Empty(err.Message)) {
      // err 中含有 code 和 message 属性,可帮助开发定位问题
    }

  }
  return _err
}


func main() {
  err := _main(tea.StringSlice(os.Args[1:]))
  if err != nil {
    panic(err)
  }
}
// This file is auto-generated, don't edit it
import Util, * as $Util from '@alicloud/tea-util';
import dingtalkh3yun_1_0, * as $dingtalkh3yun_1_0 from '@alicloud/dingtalk/h3yun_1_0';
import OpenApi, * as $OpenApi from '@alicloud/openapi-client';
import * as $tea from '@alicloud/tea-typescript';


export default class Client {

  /**
   * 使用 Token 初始化账号Client
   * @return Client
   * @throws Exception
   */
  static createClient(): dingtalkh3yun_1_0 {
    let config = new $OpenApi.Config({ });
    config.protocol = "https";
    config.regionId = "central";
    return new dingtalkh3yun_1_0(config);
  }

  static async main(args: string[]): Promise<void> {
    let client = Client.createClient();
    let createBizObjectHeaders = new $dingtalkh3yun_1_0.CreateBizObjectHeaders({ });
    createBizObjectHeaders.xAcsDingtalkAccessToken = "<your access token>";
    let createBizObjectRequest = new $dingtalkh3yun_1_0.CreateBizObjectRequest({
      schemaCode: "xxx42f92824b2d497fb4ddda0e6f2134d8",
      opUserId: "aea4d7a7-dxxx",
      bizObjectJson: "{\"F0000010\": \"0000004\", \"F0000011\": \"王五1\",\"F0000012\": \"D1级客户\",\"F0000013\": 7000,\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\": [{\"F0000014\": \"里斯\",\"F0000015\": 156666365656, \"F0000016\": \"技术部\",\"F0000017\": \"经理1\",\"F0000018\":\"男\",\"F0000019\": \"lgbxunmi@dd.com\", \"F0000020\": true, \"F0000021\": \"测试数据\"}]}",
      isDraft: false,
    });
    try {
      await client.createBizObjectWithOptions(createBizObjectRequest, createBizObjectHeaders, new $Util.RuntimeOptions({ }));
    } catch (err) {
      if (!Util.empty(err.code) && !Util.empty(err.message)) {
        // err 中含有 code 和 message 属性,可帮助开发定位问题
      }

    }    
  }

}

Client.main(process.argv.slice(2));
// This file is auto-generated, don't edit it. Thanks.

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;

using Tea;
using Tea.Utils;


namespace AlibabaCloud.SDK.Sample
{
    public class Sample 
    {

        /**
         * 使用 Token 初始化账号Client
         * @return Client
         * @throws Exception
         */
        public static AlibabaCloud.SDK.Dingtalkh3yun_1_0.Client CreateClient()
        {
            AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
            config.Protocol = "https";
            config.RegionId = "central";
            return new AlibabaCloud.SDK.Dingtalkh3yun_1_0.Client(config);
        }

        public static void Main(string[] args)
        {
            AlibabaCloud.SDK.Dingtalkh3yun_1_0.Client client = CreateClient();
            AlibabaCloud.SDK.Dingtalkh3yun_1_0.Models.CreateBizObjectHeaders createBizObjectHeaders = new AlibabaCloud.SDK.Dingtalkh3yun_1_0.Models.CreateBizObjectHeaders();
            createBizObjectHeaders.XAcsDingtalkAccessToken = "<your access token>";
            AlibabaCloud.SDK.Dingtalkh3yun_1_0.Models.CreateBizObjectRequest createBizObjectRequest = new AlibabaCloud.SDK.Dingtalkh3yun_1_0.Models.CreateBizObjectRequest
            {
                SchemaCode = "xxx42f92824b2d497fb4ddda0e6f2134d8",
                OpUserId = "aea4d7a7-dxxx",
                BizObjectJson = "{\"F0000010\": \"0000004\", \"F0000011\": \"王五1\",\"F0000012\": \"D1级客户\",\"F0000013\": 7000,\"D000183Fcd15f3a51e624bbc9945392d190b6aa8\": [{\"F0000014\": \"里斯\",\"F0000015\": 156666365656, \"F0000016\": \"技术部\",\"F0000017\": \"经理1\",\"F0000018\":\"男\",\"F0000019\": \"lgbxunmi@dd.com\", \"F0000020\": true, \"F0000021\": \"测试数据\"}]}",
                IsDraft = false,
            };
            try
            {
                client.CreateBizObjectWithOptions(createBizObjectRequest, createBizObjectHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
            }
            catch (TeaException err)
            {
                if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
                {
                    // err 中含有 code 和 message 属性,可帮助开发定位问题
                }
            }
            catch (Exception _err)
            {
                TeaException err = new TeaException(new Dictionary<string, object>
                {
                    { "message", _err.Message }
                });
                if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
                {
                    // err 中含有 code 和 message 属性,可帮助开发定位问题
                }
            }
        }


    }
}
// This file is auto-generated, don't edit it. Thanks.

#include <alibabacloud/dingtalkh_3yun__1__0.hpp>
#include <alibabacloud/open_api.hpp>
#include <boost/any.hpp>
#include <darabonba/core.hpp>
#include <darabonba/util.hpp>
#include <iostream>
#include <map>

using namespace std;

Alibabacloud_Dingtalkh3yun_1_0::Client createClient() {
  shared_ptr<Alibabacloud_OpenApi::Config> config = make_shared<Alibabacloud_OpenApi::Config>();
  config->protocol = make_shared<string>("https");
  config->regionId = make_shared<string>("central");
  return Alibabacloud_Dingtalkh3yun_1_0::Client(config);
}

int main(int argc, char *args[]) {
  args++;
  shared_ptr<Alibabacloud_Dingtalkh3yun_1_0::Client> client = make_shared<Alibabacloud_Dingtalkh3yun_1_0::Client>(createClient());
  shared_ptr<Alibabacloud_Dingtalkh3yun_1_0::CreateBizObjectHeaders> createBizObjectHeaders = make_shared<Alibabacloud_Dingtalkh3yun_1_0::CreateBizObjectHeaders>();
  createBizObjectHeaders->xAcsDingtalkAccessToken = make_shared<string>("<your access token>");
  shared_ptr<Alibabacloud_Dingtalkh3yun_1_0::CreateBizObjectRequest> createBizObjectRequest = make_shared<Alibabacloud_Dingtalkh3yun_1_0::CreateBizObjectRequest>(map<string, boost::any>({
    {"schemaCode", boost::any(string("xxx42f92824b2d497fb4ddda0e6f2134d8"))},
    {"opUserId", boost::any(string("aea4d7a7-dxxx"))},
    {"bizObjectJson", boost::any(string("{"F0000010": "0000004", "F0000011": "王五1","F0000012": "D1级客户","F0000013": 7000,"D000183Fcd15f3a51e624bbc9945392d190b6aa8": [{"F0000014": "里斯","F0000015": 156666365656, "F0000016": "技术部","F0000017": "经理1","F0000018":"男","F0000019": "lgbxunmi@dd.com", "F0000020": true, "F0000021": "测试数据"}]}"))},
    {"isDraft", boost::any(false)}
  }));
  try {
    client->createBizObjectWithOptions(createBizObjectRequest, createBizObjectHeaders, make_shared<Darabonba_Util::RuntimeOptions>(Darabonba_Util::RuntimeOptions()));
  }
  catch (std::exception &err) {
    if (!Darabonba_Util::Client::empty(err.code) && !Darabonba_Util::Client::empty(err.message)) {
      // err 中含有 code 和 message 属性,可帮助开发定位问题
    }
  }
}

返回示例

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

{
  "code" : "success",
  "message" : "Code",
  "data" : {
    "schemaCode" : "D0001839bxxx",
    "formUsageType" : "DataList",
    "bizObjectId" : "50599800-af82-xxx",
    "processInstanceId" : "3b5451bc-9fd3-xxx"
  }
}

错误码

HttpCode

错误码

错误信息

说明

400

invalidParameter.input.invalid

%s

入参校验失败

400

dataNotExist.user.userNotExist

操作用户不存在

操作用户不存在

400

invalidParameter.json.invalidJsonStringParamter

%s

bizObjectJson参数解析失败

400

dataNotExist.form.schemaNotExist

表单结构不存在

无效的schemaCode参数

400

convertFail.jsonToBizStructureFail

%s

bizObjectJson转换为表单结构失败

400

dataModified.form.createBizObjectFail

%s

创建业务对象失败

400

systemError

%s

系统错误