产品文档

电子签章

2024-12-23 06:09:16

signContract

描述

合同签章四种方式:

  1. 合同文件 + 印章文件:contractContent + stampContent

  2. 合同文件 + 印章ID:contractContent + stampId

  3. 模板ID + 印章文件:templateId + stampContent

  4. 模板ID + 印章ID:templateId + stampId

请求方式

POST

请求地址

https://cloudsign.jdcloud-api.com/v1/contract

请求参数

名称 类型 是否必需 默认值 描述
contractSpec ContractSpec True

ContractSpec

名称 类型 是否必需 默认值 描述
personStamps PerStamp[ ] False 个人用户盖章信息
companyStamps ComStamp[ ] False 企业用户盖章信息
contractContent String False 合同文件base64(contractContent,templateContent与templateId三选一)
templateContent String False 合同模板文件(contractContent,templateContent与templateId三选一)
templateId String False 合同模板文件ID(contractContent,templateContent与templateId三选一)
contractTitle String False 合同标题或名称
caType String False 证书类型

ComStamp

名称 类型 是否必需 默认值 描述
signPositionType Integer True 盖章类型(0 坐标 1 关键字)
keyWord String False 盖章关键字(与坐标二选一)
positionX Integer False 盖章X坐标(与关键字二选一)
positionY Integer False 盖章Y坐标(与关键字二选一)
offsetX Integer False 盖章X坐标偏移量(配合positionX)
offsetY Integer False 盖章Y坐标偏移量(配合positionY)
page Integer False 盖章页码(选择坐标盖章时需要)
sealName String False 印章名称,必须和imageB64同时非空
imageB64 String False 印章图像base64(与stampId二选一)
stampId String False 印章ID(与imageB64二选一)
desc String False 印章描述
isDefault Boolean False 是否作为以后签章默认章
imageType String False 图片类型,只支持png格式
imageSize Integer False 图片大小,高度*宽度
imageHeight Integer False 图片高度
imageWidth Integer False 图片宽度
orgName String True 公司名称
legalPersonName String False 法人姓名
transactorName String False 代办人姓名
transactorIdCardNum String False 代办人身份证号码
transactorMobile String False 代办人手机号
identifyType String True 标记字段 - usci(统一社会信用码) orgCode(组织机构代码) businessNum (工商营业执照号)customUserId(业务系统内部id)
identifyValue String True 标记值
stampStyle String False 自定义签章类型time(带时间印章)、crossPage(骑缝章)(如需增加时间戳,此字段传time,会覆盖contractSpec中的定义)
certExpire Integer False 0:普通证书 1:事件证书(默认为0,普通证书。会覆盖contractSpec中的定义)
pageRange String False 页范围,仅在坐标签章生效 1. all,表示所有页码; 2. 数字以逗号分隔,形如:"1,2,3""1,2,3"; 3. 以短横线:以短横线'-'分隔的两个数字,会被扩展为⼀段范围,形如:"2-4"; 4:规则2和3可以混用,形如:"2-4,7"
positionPoint String False 关键字盖章坐标位置(right盖章在关键字右边,left盖章在关键字左边,center盖章在关键字中间。不传默认center)
keywordCenter Boolean False 关键字盖章,关键字中心点是否和印章中心点重合,默认false,positionPoint为center时生效

PerStamp

名称 类型 是否必需 默认值 描述
signPositionType Integer True 盖章类型(0 坐标 1 关键字)
keyWord String False 盖章关键字(与坐标二选一)
positionX Integer False 盖章X坐标(与关键字二选一)
positionY Integer False 盖章Y坐标(与关键字二选一)
offsetX Integer False 盖章X坐标偏移量(配合positionX)
offsetY Integer False 盖章Y坐标偏移量(配合positionY)
page Integer False 盖章页码(选择坐标盖章时需要)
sealName String False 印章名称,必须和imageB64同时非空
imageB64 String False 印章图像base64(与stampId二选一)
stampId String False 印章ID(与imageB64二选一)
desc String False 印章描述
isDefault Boolean False 是否作为以后签章默认章
imageType String False 图片类型,只支持png格式
imageSize Integer False 图片大小,高度*宽度
imageHeight Integer False 图片高度
imageWidth Integer False 图片宽度
personalName String True 姓名
mobile String False 手机号
identifyType String True 标记字段 - idCardNum(身份证) passportNum(护照) mtpNum(港澳通行证)
identifyValue String True 标记值
stampStyle String False 自定义签章类型 time(带时间印章)、crossPage(骑缝章)(如需增加时间戳,此字段传time,会覆盖contractSpec中的定义)
certExpire Integer False 0:普通证书 1:事件证书(默认为0,普通证书。会覆盖contractSpec中的定义)
pageRange String False 页范围,仅在坐标签章生效 1. all,表示所有页码; 2. 数字以逗号分隔,形如:"1,2,3""1,2,3"; 3. 以短横线:以短横线'-'分隔的两个数字,会被扩展为⼀段范围,形如:"2-4"; 4:规则2和3可以混用,形如:"2-4,7"
positionPoint String False 关键字盖章坐标位置(right盖章在关键字右边,left盖章在关键字左边,center盖章在关键字中间。不传默认center)
keywordCenter Boolean False 关键字盖章,关键字中心点是否和印章中心点重合,默认false,positionPoint为center时生效

返回参数

名称 类型 描述
result Result
requestId String 请求ID

Result

名称 类型 描述
contractId String 新签的合同ID (contractId是否存在,来标识本次签署是否成功)
contractContent String 新签的合同文件(base64)

返回码

返回码 描述
200 OK
404 NOT FOUND

状态码

请求失败时,返回体没有result,有error字段,错误码取error中的status

{
  "requestId":"coaqjo896vk941v8j9uace7c9m5d5qci",
  "error":{
    "code":400,
    "message":"xxxx",
    "status":"CLOUDSIGN-R20200"
  }
}
状态码 描述
CLOUDSIGN-500 系统内部错误
CLOUDSIGN-R10001 上传云存储失败
CLOUDSIGN-R20001 合同不存在
CLOUDSIGN-R20103 API签署余额不足
CLOUDSIGN-R20200 签署合同失败
CLOUDSIGN-R20601 api签署失败,未找到模板
CLOUDSIGN-R20600 api签署失败,未找到待签署合同

示例代码

复制成功

import (
	"fmt"
	core "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/core"
	cloudsign "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudsign/apis"
	client "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudsign/client"
	models "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudsign/modles"
)

func main() {
	accessKey := "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
	secretKey := "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
	credentials := core.NewCredentials(accessKey, secretKey)
	
	config := core.NewConfig()
	config.SetEndpoint("10.226.148.63:8000")
	config.SetScheme("http")

	client := client.NewCloudsignClient(credentials)
	client.SetConfig(config)
	// 签章接口
	{
		perStamps := [ ]models.PerStamp{
			models.PerStamp{
			/* 盖章类型(0 坐标 1 关键字) (Optional) */
			SignPositionType :1,

			/* 盖章关键字(与坐标二选一) (Optional) */
			Keyword :"",

			/* 盖章X坐标(与关键字二选一) (Optional) */
			PositionX :1,

			/* 盖章Y坐标(与关键字二选一) (Optional) */
			PositionY :1,

			/* 盖章X坐标偏移量(配合positionX) (Optional) */
			OffsetX :1,

			/* 盖章Y坐标偏移量(配合positionY) (Optional) */
			OffsetY :1,

			/* 盖章页码(选择坐标盖章时需要) (Optional) */
			Page : 1,

			/* 印章名称,必须和imageB64同时非空 (Optional) */
			SealName :"",

			/* 印章图像base64(与stampId二选一) (Optional) */
			ImageB64 :"",

			/* 印章ID(与imageB64二选一) (Optional) */
			StampId :"",

			/* 印章描述 (Optional) */
			Desc :"",

			/* 是否作为以后签章默认章 (Optional) */
			IsDefault :false,

			/* 图片类型,只支持png格式 (Optional) */
			ImageType:"",

			/* 图片大小,高度*宽度 (Optional) */
			ImageSize :1,

			/* 图片高度 (Optional) */
			ImageHeight :1,

			/* 图片宽度 (Optional) */
			ImageWidth :0,

			/* 姓名 (Optional) */
			PersonalName :"",

			/* 手机号 (Optional) */
			Mobile :"",

			/* 标记字段 - idCardNum(身份证) passportNum(护照) mtpNum(港澳通行证) (Optional) */
			IdentifyType :"",

			/* 标记值 (Optional) */
			IdentifyValue:"",

		},
	}
	comStamps := [ ]models.ComStamp{
		models.ComStamp{
			/* 盖章类型(0 坐标 1 关键字) (Optional) */
			SignPositionType :1,

			/* 盖章关键字(与坐标二选一) (Optional) */
			Keyword :"",

			/* 盖章X坐标(与关键字二选一) (Optional) */
			PositionX :1,

			/* 盖章Y坐标(与关键字二选一) (Optional) */
			PositionY :1,

			/* 盖章X坐标偏移量(配合positionX) (Optional) */
			OffsetX :1,

			/* 盖章Y坐标偏移量(配合positionY) (Optional) */
			OffsetY :1,

			/* 盖章页码(选择坐标盖章时需要) (Optional) */
			Page :1,

			/* 印章名称,必须和imageB64同时非空 (Optional) */
			SealName :"",

			/* 印章图像base64(与stampId二选一) (Optional) */
			ImageB64 :"",

			/* 印章ID(与imageB64二选一) (Optional) */
			StampId :"",

			/* 印章描述 (Optional) */
			Desc :"",

			/* 是否作为以后签章默认章 (Optional) */
			IsDefault :false,

			/* 图片类型,只支持png格式 (Optional) */
			ImageType :"",

			/* 图片大小,高度*宽度 (Optional) */
			ImageSize :1,

			/* 图片高度 (Optional) */
			ImageHeight:1,

			/* 图片宽度 (Optional) */
			ImageWidth :1,

			/* 公司名称 (Optional) */
			OrgName :"",

			/* 法人姓名 (Optional) */
			LegalPersonName :"",

			/* 代办人姓名 (Optional) */
			TransactorName :"",

			/* 代办人身份证号码 (Optional) */
			TransactorIdCardNum :"",

			/* 代办人手机号 (Optional) */
			TransactorMobile :"",

			/* 标记字段 - usci(统一社会信用码) orgCode(组织机构代码) businessNum (工商营业执照号) (Optional) */
			IdentifyType :"",

			/* 标记值 (Optional) */
			IdentifyValue:"",

			},
		}
		contract:= models.ContractSpec{
			PersonStamps: perStamps,
			CompanyStamps:comStamps,
			ContractContent:"SHDGKXXVLLDJD==", // 合同文件的base64编码,支持pdf格式,三选一
			TemplateContent:"SHDGKXXVLLDJD==", // 模板文件的base64编码,支持pdf格式,三选一
			TemplateId:'template-xxxxxxxxxxxxxxxx', // 模板文件Id,三选一
			ContractTitle:"合同标题",
			CaType:"", // CA类型
		}
		req := cloudsign.NewSignContractRequest(contract)
		if resp, err := client.SignContract(req); err != nil {
			fmt.Println("error : ", err)
		} else {
			fmt.Println("resp : ", resp)
		}
	}
}
文档反馈

开始与售前顾问沟通

可直接拨打电话 400-098-8505转1

我们的产品专家为您找到最合适的产品/解决⽅案

在线咨询 5*8⼩时

1v1线上咨询获取售前专业咨询

点击咨询
企微服务助手

专业产品顾问,随时随地沟通