acmessl.cn提供接口API方式申请免费ssl证书

目录

一、前沿

二、API接口文档

1、证书可申请列表

简要描述

请求URL

请求方式

返回参数说明

备注

2、证书申请

简要描述

请求URL

请求方式

业务参数

返回示例

返回参数说明

备注

3、证书查询

简要描述

请求URL

请求方式

业务参数

返回参数说明

备注

4、证书验证

简要描述

请求URL

请求方式

业务参数

返回参数说明

5、必看DEMO

DEMO基于JAVA开发语言编写


一、前沿

ACME SSL免费申请证书-ACME自动化管理工具-免费提供申请Let's Encrypt、ZeroSSL、Google Public CA等CA证书-可以访问acmessl.cn,同时系统支持提供接口API方式申请免费ssl证书。ACME SSL是一个提供免费SSL证书申请的专业工具平台,我们与全球知名的发证机构紧密联系,简化SSL证书获取过程,降低用户的技术门槛和成本,帮助用户轻松获取并部署SSL证书, 以保护其网站和应用的通信安全。使用ACME SSL申请免费证书,有效期90天,可使用ACMESSL自动化续期功能自动续期。

二、API接口文档

ACME SSL提供证书申请API文档,需要有一定软件开发能力的团体才能接入,无技术开发能力的团体可以直接使用界面访问acmessl.cn操作。如下是API文档内容。

1、证书可申请列表

简要描述
  • 证书可申请列表接口
请求URL
  • https://域名/dev-api/gateway/acmessl/getAbleCertList
请求方式
  • POST + JSON
返回参数说明
参数名 类型 说明
certId Long 证书ID
brand String 证书品牌
name String 证书名称
status int 状态,1开放注册 0 未开放注册
certType String 类型,单域名,多域名,通配符
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名 说明
code 200 执行成功,其他code码失败

2、证书申请

简要描述
  • 证书申请接口;
  • 此接口为异步接口,提交接口成功后,只返回订单号,需要根据订单查询接口查询订单状态变化。
请求URL
  • https://域名/dev-api/gateway/acmessl/create
请求方式
  • POST + JSON
业务参数
参数名 必选 类型 说明
certId Long 证书ID
domainName string 申请证书域名(acmessl.cn或者*.acmessl.cn,多个域名用英文逗号隔开)
csrSource string csr来源:值为1表示浏览器生成,2离线生成(为了安全起见,目前只支持离线生成)
validType string 验证方式:1DNS手工验证,2:DNS 自动验证,4:HTTP文件验证
encryptType string 公钥算法加密类型:RSA,ECC
返回示例
复制代码
{
  "msg": "操作成功",
  "code": 200,
  "data":{
      "orderNo": 467282727266172
    }
}
返回参数说明
参数名 类型 说明
orderNo String 订单号
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名 说明
code 200 执行成功,其他code码失败

3、证书查询

简要描述
  • 证书查询接口
请求URL
  • https://域名/dev-api/gateway/acmessl/query
请求方式
  • POST + JSON
业务参数
参数名 必选 类型 说明
orderNo String 订单号
返回参数说明
参数名 类型 说明
orderNo String 订单号
brand String 证书品牌
name String 域名名称
days String 证书有效期90天
csrSource String csr来源:值为:1表示浏览器生成;2离线生成
validType String 验证方式:1DNS手工验证,2:DNS 自动验证,4HTTP文件验证
encryptType String 公钥加密算法类型RSA,ECC
typeContent String 验签参数json数据
status String 订单状态
certInfo Object 证书详情
- validBeginDate date 证书起始时间
- validEndDate date 证书截止时间
- serialNumber String 证书sn
- sigAlgName String 签名算法
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名 说明
code 200 执行成功,其他code码失败

4、证书验证

简要描述
  • 订单验证接口,提交频率为3分钟;
  • 接口为异步接口,提交成功后,系统自动验证;可通过查询接口查看订单状态。
请求URL
  • https://域名/dev-api/gateway/acmessl/valid
请求方式
  • POST +JSON
业务参数
参数名 必选 类型 说明
orderNo string 订单号
返回参数说明
参数名 类型 说明
status String 订单状态,0:申请中,1待验证,2验证中,3颁发证书成功,-1:取消

5、必看DEMO

DEMO基于JAVA开发语言编写

1、参数定义

复制代码
    //邮箱账号
    private static final String EMAIL = "[email protected]";
    //apiKey
    private static final String API_KEY = "xxx0ee12a484601851045fb78d4b1e8";
    //调用域名
    private static final String DOMAIN_URL = "https://console.acmessl.cn/dev-api/gateway/acmessl/";
    //调用方法
    public static final String getAbleCertList = "getAbleCertList";
    public static final String create="create";

2、header头参数

复制代码
    /**
     * 组织请求头headers
     *
     * @return
     */
    private static  Map<String, String> headers() {
        int rand = RandomUtils.nextInt(100000, 999999);
        long timestamp = System.currentTimeMillis() / 1000;
        Map<String, String> header = Maps.newHashMap();
        header.put("rand", String.valueOf(rand));
        header.put("timestamp", String.valueOf(timestamp));
        header.put("email", EMAIL);
        header.put("sign", Md5Utils.hash(EMAIL + API_KEY + rand + timestamp));
        header.put("Content-type", "application/json");
        return header;
    }

3、请求调用

复制代码
    /**
     * 调用demo
     */
    public static void main(String[] args) {
        //1请求证书可申请列表接口
        JSONObject result1 = HttpUtils.doPostJson(DOMAIN_URL + getAbleCertList,new JSONObject(), headers());
        log.info("result:{}", result1);
        //2证书申请
        JSONObject json=new JSONObject();
        json.put("certId",4);
        json.put("domainName","ddd.ceshi.com");
        json.put("csrSource",2);
        json.put("validType","1");
        json.put("encryptType","ECC");
        json.put("notifyUrl","http://www.xxx.com/xx/notify.do");
        JSONObject result2 = HttpUtils.doPostJson(DOMAIN_URL + create,json, headers());
        log.info("result:{}", result2);
        //其他接口同理
    }
相关推荐
码农101号3 小时前
Linux中shell编程表达式和数组讲解
linux·运维·服务器
是小满满满满吗4 小时前
传输层:udp与tcp协议
linux·服务器·网络
小刘同学++4 小时前
ECB(电子密码本,Electronic Codebook) 和 CBC(密码分组链接,Cipher Block Chaining)区分于用途
网络·ssl
CryptoPP4 小时前
使用WebSocket实时获取印度股票数据源(无调用次数限制)实战
后端·python·websocket·网络协议·区块链
Mintimate5 小时前
云服务器 Linux 手动 DD 安装第三方 Linux 发行版:原理与实战
linux·运维·服务器
gadiaola5 小时前
【计算机网络】第3章:传输层—TCP 拥塞控制
网络·网络协议·tcp/ip·计算机网络
RussellFans5 小时前
Linux 环境配置
linux·运维·服务器
网硕互联的小客服5 小时前
503 Service Unavailable:服务器暂时无法处理请求,可能是超载或维护中如何处理?
服务器·git·github
高冷的肌肉码喽6 小时前
Linux-进程间的通信
linux·运维·服务器
jekc8686 小时前
禅道18.2集成LDAP
linux·运维·服务器