当前位置: 首页 > article >正文

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
返回参数说明
参数名类型说明
certIdLong证书ID
brandString证书品牌
nameString证书名称
statusint状态,1开放注册 0 未开放注册
certTypeString类型,单域名,多域名,通配符
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名说明
code200执行成功,其他code码失败

2、证书申请

简要描述
  • 证书申请接口;
  • 此接口为异步接口,提交接口成功后,只返回订单号,需要根据订单查询接口查询订单状态变化。
请求URL
  • https://域名/dev-api/gateway/acmessl/create
请求方式
  • POST + JSON

业务参数
参数名必选类型说明
certIdLong证书ID
domainNamestring申请证书域名(acmessl.cn或者*.acmessl.cn,多个域名用英文逗号隔开)
csrSourcestringcsr来源:值为1表示浏览器生成,2离线生成(为了安全起见,目前只支持离线生成)
validTypestring验证方式:1DNS手工验证,2:DNS 自动验证,4:HTTP文件验证
encryptTypestring公钥算法加密类型:RSA,ECC
返回示例
{
  "msg": "操作成功",
  "code": 200,
  "data":{
      "orderNo": 467282727266172
    }
}
返回参数说明
参数名类型说明
orderNoString订单号
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名说明
code200执行成功,其他code码失败

3、证书查询

简要描述
  • 证书查询接口
请求URL
  • https://域名/dev-api/gateway/acmessl/query
请求方式
  • POST + JSON

业务参数
参数名必选类型说明
orderNoString订单号
返回参数说明
参数名类型说明
orderNoString订单号
brandString证书品牌
nameString域名名称
daysString证书有效期90天
csrSourceStringcsr来源:值为:1表示浏览器生成;2离线生成
validTypeString验证方式:1DNS手工验证,2:DNS 自动验证,4HTTP文件验证
encryptTypeString公钥加密算法类型RSA,ECC
typeContentString验签参数json数据
statusString订单状态
certInfoObject证书详情
- validBeginDatedate证书起始时间
- validEndDatedate证书截止时间
- serialNumberString证书sn
- sigAlgNameString签名算法
备注
  • 更多返回错误代码请看首页的错误代码描述
参数名说明
code200执行成功,其他code码失败

4、证书验证

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

5、必看DEMO

DEMO基于JAVA开发语言编写

1、参数定义

    //邮箱账号
    private static final String EMAIL = "xxx@qq.com";
    //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);
        //其他接口同理
    }

http://www.kler.cn/a/386526.html

相关文章:

  • 【MySQL】数据库知识突破:数据类型全解析与详解
  • 从0开始机器学习--Day23--支持向量机
  • 如何在 Ubuntu 16.04 上设置 NFS 挂载
  • Ubuntu 的 ROS 操作系统turtlebot3环境搭建
  • 微服务电商平台课程三:搭建后台服务
  • 2024年【汽车修理工(高级)】考试试卷及汽车修理工(高级)证考试
  • 第 2 章 - Go语言环境搭建
  • C++builder中的人工智能(16):神经网络中的SoftPlus激活函数
  • 网络安全应急响应(归纳)
  • AscendC从入门到精通系列(一)初步感知AscendC
  • 「Mac玩转仓颉内测版3」入门篇3 - Cangjie的基本语法与结构
  • rediss数据结构及其底层实现
  • C++代码优化(三): 决不要重新定义继承而来的缺省参数值
  • Android中桌面小部件的开发流程及常见问题和解决方案
  • Chrome与傲游在隐私保护上的表现
  • linux centos新机器容器中创建虚拟环境
  • jmeter常用配置元件介绍总结之安装插件
  • 重塑商业未来:探索SAAS服务的无限可能
  • 基于STM32的自动化植物浇灌系统教学
  • 谷粒商城-高级篇-认证服务
  • 云计算在esxi 主机上创建 4g磁盘,同时在此磁盘上部署linux
  • .NET使用TDengine时序数据库和SqlSugar操作TDengine
  • 如何在 Django 中生成 Excel 文件并上传至 FastDFS
  • Python基础学习-02转义、输入、函数
  • C语言--结构体的大小与内存对齐,位段详解
  • Go 指针的使用