电子合同API开发文档 v5

创建合同

请求地址:/v5/Contracts/create.json

请求方式:POST

接口版本: 5.2.3

接口描述:

program APIStore;
{*
本范例在Delphi XE10.1下编译通过,依赖Indy10组件
*}
{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils, System.Classes,
  IdHTTP,idURI;

{*
POST请求方式(推荐)
url 请求地址
param 请求参数
*}
procedure requestPost(url:string; param:string);
var
  pHttp: TIdHTTP;

  requestStream : TStringStream;  //请求数据流
  responseStream : TStringStream; //返回信息
  responseStr : string;
begin
  requestStream := TStringStream.Create('',TEncoding.UTF8);
  responseStream := TStringStream.Create('',TEncoding.UTF8);
  pHttp := TIdHTTP.Create(Nil);
  try
    try
      phttp.Request.ContentType:='application/x-www-form-urlencoded';
      phttp.Request.CharSet := 'UTF-8';
      requestStream.WriteString(param);   //以流的方式提交参数

      pHttp.Post(url,requestStream,responseStream);

      responseStr := responseStream.DataString;    //获取网页返回的信息
      //responseStr := UTF8Decode(responseStr);
      writeln(responseStr);
    except
      on e : Exception do
       begin
        writeln(e.Message);
      end;
    end;
  finally
    phttp.Free;
    requestStream.Free;
    responseStream.Free;
  end;
end;

{*
GET请求方式
url 请求地址
param 请求参数
*}
procedure requestGet(url:string; param:string);
  var
  pHttp: TIdHTTP;
  responseStream : TStringStream; //返回信息
  responseStr : string;
begin
  responseStream := TStringStream.Create('',TEncoding.UTF8);
  pHttp := TIdHTTP.Create(Nil);
  try
    try
      pHttp.Get(url + '?' + param,responseStream);
      responseStr := responseStream.DataString;    //获取网页返回的信息
      //responseStr := UTF8Decode(ResponseStr);
      writeln(responseStr);
    except
      on e : Exception do
       begin
        writeln(e.Message);
      end;
    end;
  finally
    phttp.Free;
    responseStream.Free;
  end;
end;


//获取内容
procedure getContent(requestType:string);
var
  url:string;
  reg:string;
  pwd:string;
  param:string;
begin
   url:="https://api-v2.1dq.com/v5/Contracts/create.json";
 param:="easy_id=175592531139104768&file_id=signed-ce5858499044c9b8fbbaa272754c145a-108d9e29-0001&name=项目合同协议&signed_data=175592531139104768, 175592531139104768&attachment=[ { "file_id" : "signed-efb2124360fb5f8b109220e27f99ae35-73ff845c-0006", "file_name" : "附件1" }, { "file_id" : "signed-efb2124360fb5f8b109220e27f99ae35-73ff845c-0006", "file_name" : "附件2" } ]&ca_type=1&channel=api©_custom_user=[
    {
        "sign_role":"甲方",
        "sign_name":"姓名",
        "sign_number":"电话",
        "sign_company":"选填项,公司名",
        "sign_seal_hand":1,
        "sign_seal_tpl":1,
        "sign_class":1
    }
]©_data=&deposit_certificate_type=1&file_end_date=¬ice_signed=&pdf_password=&sign_end_date=&signed_custom_user=[
    {
        "sign_role":"甲方",
        "sign_name":"姓名",
        "sign_number":"电话",
        "sign_company":"选填项,公司名",
        "seal_require":["印章要求"],
        "sign_class":1
    }
]&tpl_data={
    "自定义参数": "需要替换的内容1",
    "自定义参数2": "需要替换的内容2"
}&tpl_id=";

  if requestType = 'GET' then
  begin
      requestGet(url,param);
  end
  else
  begin
      requestPost(url,param);
  end;
end;